Bladeren bron

页面编辑-优化插入自定义页面、刷新页面大小的问题

OYXH\oyxh 1 jaar geleden
bovenliggende
commit
f0b5b2a3ff

+ 3 - 2
PDF Office/ViewModels/Dialog/PageEditDialogs/InsertDialogViewModel.cs

@@ -387,9 +387,10 @@ namespace PDF_Master.ViewModels.Dialog.PageEditDialogs
             {
                 if (Model.height <= Model.width)
                 {
+                    //纵向  需要重新定义宽高
                     var temp = Model.height;
                     Model.height = Model.width;
-                    Model.width = Model.height;
+                    Model.width = temp;
                 }
             }
             else
@@ -449,7 +450,7 @@ namespace PDF_Master.ViewModels.Dialog.PageEditDialogs
                     CurrentPageSize = $"({size.Width.ToString("F0")}mm*{size.Height.ToString("F0")}mm)";
                     CustomWidth = size.Width.ToString("F0");
                     CustomHeight = size.Height.ToString("F0");
-                    
+
                     Model.width = (int)size.Width;
                     Model.height = (int)size.Height;
                 }

+ 18 - 7
PDF Office/ViewModels/PageEdit/PageEditContentViewModel.cs

@@ -1295,7 +1295,9 @@ namespace PDF_Master.ViewModels.PageEdit
                 {
                     TbPageRange = (listSelecedIndex + 1).ToString();
                     //缩放 平移移动页面,页面大小出现不全的问题
-                    listbox.ScrollIntoView(listbox.SelectedItems[0]);
+                    //listbox.ScrollIntoView(listbox.SelectedItems[0]);
+                    //需要刷新 startRefreshIndex 、endRefreshIndex
+                    NotifyUIToRefresh();
                 }
                 else
                 {
@@ -1406,7 +1408,7 @@ namespace PDF_Master.ViewModels.PageEdit
                 TbPageRange = string.Empty;
                 AlertsMessage alertsMessage = new AlertsMessage();
                 alertsMessage.ShowDialog("", App.MainPageLoader.GetString("PageRangeWarning"), App.ServiceLoader.GetString("Text_ok"));
-              
+
                 return;
             }
 
@@ -2315,10 +2317,18 @@ namespace PDF_Master.ViewModels.PageEdit
                     ShowToast();
                     return false;
                 }
-                PageEditItem item = new PageEditItem();
-                item.Size = PDFViewer.Document.GetPageSize(insertIndex);
+                //PageEditItem item = new PageEditItem();
+                //item.Size = PDFViewer.Document.GetPageSize(insertIndex);
+                //PageEditItems.Insert(insertIndex, item);
+
+                //UI层插入Item ,需要处理一下Item
+                var item = GetNewPageEditItem(insertIndex);
                 PageEditItems.Insert(insertIndex, item);
-                ReloadAfterOption(true, false, Tuple.Create(insertIndex - 1, insertIndex + 1));
+
+                ReloadAfterOption(true, false, Tuple.Create(insertIndex - 1, insertIndex + 1), true);
+
+                //选中插入的页面
+                ListSelectedIndex = insertIndex;
                 return true;
             }
             catch
@@ -2752,8 +2762,9 @@ namespace PDF_Master.ViewModels.PageEdit
             }
 
             //一个拿图比例系数,减少拿图耗时,尽量确保缩放后图片清晰度不会很差
-            int rate = (int)ItemSizes[2].Height;
-
+            //int rate = (int)ItemSizes[2].Height;
+            //230628 缩略图需要根据当前 的缩略值
+            int rate = (int)ItemSizes[ZoomIndex + 1].Height;
             for (int i = startIndex; i <= endIndex; i++)
             {
                 if (i <= PageEditItems.Count - 1 && i >= 0 && PageEditItems.Count > 0 && PDFViewer.Document != null && rate > 0)