|
@@ -492,7 +492,7 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
DeleteCommand = new DelegateCommand(DeleteCommandEvent, CanFileCommandExcute).ObservesProperty(() => ListSelectedIndex);
|
|
|
LeftRotateCommand = new DelegateCommand(LeftRotateCommandEvent, CanFileCommandExcute).ObservesProperty(() => ListSelectedIndex);
|
|
|
RightRotateCommand = new DelegateCommand(RightRotateCommandEvent, CanFileCommandExcute).ObservesProperty(() => ListSelectedIndex);
|
|
|
- ReverseCommand = new DelegateCommand(ReverseCommandEvent, CanFileCommandExcute).ObservesProperty(() => ListSelectedIndex);
|
|
|
+ ReverseCommand = new DelegateCommand(ReverseCommandEvent, CanReverseFileCommandExcute).ObservesProperty(() => IsMultiSelected);
|
|
|
ZoomInCommand = new DelegateCommand(ZoomInCommandEvent, CanZoomIn).ObservesProperty(() => ZoomIndex);
|
|
|
ZoomOutCommand = new DelegateCommand(ZoomOutCommandEvent, CanZoomOut).ObservesProperty(() => ZoomIndex);
|
|
|
ShowPageSizeCommand = new DelegateCommand(ShowPageSize);
|
|
@@ -885,8 +885,20 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
{
|
|
|
return true;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
+ }
|
|
|
+
|
|
|
+ private bool CanReverseFileCommandExcute()
|
|
|
+ {
|
|
|
+ if (ListSelectedIndex > 0 && IsMultiSelected)
|
|
|
+ {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 校验是否可以替换
|
|
|
/// </summary>
|
|
@@ -1685,7 +1697,14 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
|
|
|
var data = model;
|
|
|
int PageCount = pdfViewer.Document.PageCount;
|
|
|
- string selectedfile = "";
|
|
|
+ string selectedfile = "";
|
|
|
+
|
|
|
+ string directory = System.IO.Path.Combine(dialog.SelectedPath, pdfViewer.Document.FileName);
|
|
|
+ if (Directory.Exists(directory) == false)
|
|
|
+ {
|
|
|
+ Directory.CreateDirectory(directory);
|
|
|
+ }
|
|
|
+ string filename = "";
|
|
|
if (data.Mode == HomePageSplitDialogModel.SplitMode.AveragePages)
|
|
|
{
|
|
|
int perPages = Convert.ToInt32(data.GetModeCount);
|
|
@@ -1703,9 +1722,10 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
{
|
|
|
savedoc.Release();
|
|
|
continue;
|
|
|
- }
|
|
|
- string filename = data.FileName + " " + (i + 1) + ".pdf";
|
|
|
- string path = System.IO.Path.Combine(dialog.SelectedPath, filename);
|
|
|
+ }
|
|
|
+ filename = GetFileName(data, i);
|
|
|
+
|
|
|
+ string path = System.IO.Path.Combine(directory, filename);
|
|
|
path = CommonHelper.CreateFilePath(path);
|
|
|
result = savedoc.WriteToFilePath(path);
|
|
|
if (!result)
|
|
@@ -1732,8 +1752,8 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
endNum = Math.Min(endNum, PageCount);
|
|
|
string range = startNum + "-" + endNum;
|
|
|
startNum = endNum + 1;
|
|
|
- string fileName = data.FileName + " " + (i + 1) + ".pdf";
|
|
|
- string path = System.IO.Path.Combine(dialog.SelectedPath, fileName);
|
|
|
+ filename = GetFileName(data, i);
|
|
|
+ string path = System.IO.Path.Combine(directory, filename);
|
|
|
path = CommonHelper.CreateFilePath(path);
|
|
|
CPDFDocument savedoc = CPDFDocument.CreateDocument();
|
|
|
bool result = savedoc.ImportPages(pdfViewer.Document, range);
|
|
@@ -1785,8 +1805,9 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
|
|
|
selectedfile = "";
|
|
|
CPDFDocument saveDoc1 = CPDFDocument.CreateDocument();
|
|
|
- string filepath = data.FileName + " " + "1.pdf";
|
|
|
- string path1 = Path.Combine(dialog.SelectedPath, filepath);
|
|
|
+ //string filepath = data.FileName + " " + "1.pdf";
|
|
|
+ filename = GetFileName(data, 1);
|
|
|
+ string path1 = Path.Combine(directory, filename);
|
|
|
path1 = CommonHelper.CreateFilePath(path1);
|
|
|
bool result = saveDoc1.ImportPages(pdfViewer.Document, pageRange);
|
|
|
if (!result)
|
|
@@ -1805,9 +1826,10 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
saveDoc1.Release();
|
|
|
selectedfile = path1;
|
|
|
|
|
|
- #endregion //part1
|
|
|
+ #endregion 方案一 //part1
|
|
|
|
|
|
#region 方案二 //Part2
|
|
|
+
|
|
|
//List<int> pageList2 = new List<int>();
|
|
|
//for (int i = 1; i <= pdfViewer.Document.PageCount; i++)
|
|
|
//{
|
|
@@ -1835,7 +1857,8 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
//}
|
|
|
//saveDoc2.Release();
|
|
|
//selectedfile = path2;
|
|
|
- #endregion
|
|
|
+
|
|
|
+ #endregion 方案二 //Part2
|
|
|
}
|
|
|
//显示文件夹,并选中一个文件
|
|
|
Process.Start("explorer", "/select,\"" + selectedfile + "\"");
|
|
@@ -1843,8 +1866,26 @@ namespace PDF_Master.ViewModels.PageEdit
|
|
|
catch (Exception ex)
|
|
|
{
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
+ }
|
|
|
+
|
|
|
+ private string GetFileName(HomePageSplitDialogModel model, int index)
|
|
|
+ {
|
|
|
+ string filename = "";
|
|
|
+ string label = model.HasLabel ? model.FileNameLabel : "";
|
|
|
+ string deimiter = model.HasDeimiter ? model.FileNameDeimiter : "";
|
|
|
+
|
|
|
+ if (model.IsSourceNameFront)
|
|
|
+ {
|
|
|
+ filename = model.SourceFileName + deimiter + label + (index + 1) + ".pdf";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ filename = label + (index + 1) + deimiter + model.SourceFileName + ".pdf";
|
|
|
+ }
|
|
|
+
|
|
|
+ return filename;
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 将文件插入到指定位置
|
|
|
/// </summary>
|