Prechádzať zdrojové kódy

compdfkit(win) - 去重,补充水印弹窗文案

liuaoran 1 rok pred
rodič
commit
e7a1feb4f6

+ 18 - 0
Demo/Examples/Compdfkit_Tools/Common/Helper/CommonHelper.cs

@@ -59,6 +59,24 @@ namespace Compdfkit_Tools.Helper
 
     public static class CommonHelper
     {
+        public static bool IsImageCorrupted(string imagePath)
+        {
+            try
+            {
+                using (Bitmap bitmap = new Bitmap(imagePath))
+                {
+                    int width = bitmap.Width;
+                    int height = bitmap.Height;
+                }
+
+                return false;
+            }
+            catch (Exception)
+            {
+                MessageBox.Show(LanguageHelper.CommonManager.GetString("Text_ImageCorrupted"), LanguageHelper.CommonManager.GetString("Button_OK"), MessageBoxButton.OK);
+                return true;
+            }
+        }
 
         public static Bitmap ConvertTo32bppArgb(Bitmap source)
         {

+ 10 - 0
Demo/Examples/Compdfkit_Tools/Strings/Common.Designer.cs

@@ -1,6 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
+//     Runtime Version:4.0.30319.42000
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -779,6 +780,15 @@ namespace Compdfkit_Tools.Strings.Common {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to Load image failed. Please check if the image is corrupted..
+        /// </summary>
+        internal static string Text_ImageCorrupted {
+            get {
+                return ResourceManager.GetString("Text_ImageCorrupted", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Page .
         /// </summary>

+ 3 - 0
Demo/Examples/Compdfkit_Tools/Strings/Common.resx

@@ -489,4 +489,7 @@
   <data name="Tip_Permission" xml:space="preserve">
     <value>is with permission restrictions.</value>
   </data>
+  <data name="Text_ImageCorrupted" xml:space="preserve">
+    <value>Load image failed. Please check if the image is corrupted.</value>
+  </data>
 </root>

+ 3 - 0
Demo/Examples/Compdfkit_Tools/Strings/Common.zh.resx

@@ -489,4 +489,7 @@
   <data name="Tip_Permission" xml:space="preserve">
     <value>具有权限限制</value>
   </data>
+  <data name="Text_ImageCorrupted" xml:space="preserve">
+    <value>图像加载失败,请检查图片是否损坏。</value>
+  </data>
 </root>

+ 19 - 0
Demo/Examples/Compdfkit_Tools/Strings/Security.Designer.cs

@@ -1,6 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
+//     Runtime Version:4.0.30319.42000
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -680,6 +681,24 @@ namespace Compdfkit_Tools.Strings {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to No File Selected..
+        /// </summary>
+        internal static string Warn_EmptyWatermarkImage {
+            get {
+                return ResourceManager.GetString("Warn_EmptyWatermarkImage", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to No Text input..
+        /// </summary>
+        internal static string Warn_EmptyWatermarkText {
+            get {
+                return ResourceManager.GetString("Warn_EmptyWatermarkText", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized string similar to Invalid Password.
         /// </summary>

+ 6 - 0
Demo/Examples/Compdfkit_Tools/Strings/Security.resx

@@ -330,4 +330,10 @@
   <data name="Title_RemoveSecurity" xml:space="preserve">
     <value>Remove Security</value>
   </data>
+  <data name="Warn_EmptyWatermarkImage" xml:space="preserve">
+    <value>No File Selected.</value>
+  </data>
+  <data name="Warn_EmptyWatermarkText" xml:space="preserve">
+    <value>No Text input.</value>
+  </data>
 </root>

+ 9 - 0
Demo/Examples/Compdfkit_Tools/Strings/Security.zh.resx

@@ -330,4 +330,13 @@
   <data name="Title_OperationType" xml:space="preserve">
     <value>操作类型</value>
   </data>
+  <data name="Text_EmptyPath" xml:space="preserve">
+    <value>没有选择文件</value>
+  </data>
+  <data name="Warn_EmptyWatermarkImage" xml:space="preserve">
+    <value>没有选择文件。</value>
+  </data>
+  <data name="Warn_EmptyWatermarkText" xml:space="preserve">
+    <value>没有输入文字。</value>
+  </data>
 </root>

+ 6 - 0
Demo/Examples/Compdfkit_Tools/Watermark/AddWatermark/FileGridListWithPageRangeControl.xaml.cs

@@ -165,6 +165,12 @@ namespace Compdfkit_Tools.PDFControl
                     {
                         continue;
                     }
+
+                    if (FileInfoDataList.Any(item => item.Path == document.FilePath))
+                    {
+                        continue;
+                    }
+
                     if (document.IsLocked)
                     {
                         PasswordWindow passwordWindow = new PasswordWindow();

+ 8 - 4
Demo/Examples/Compdfkit_Tools/Watermark/AddWatermark/WatermarkDialog.xaml.cs

@@ -4,6 +4,7 @@ using Compdfkit_Tools.Helper;
 using System;
 using System.Collections.Generic;
 using System.ComponentModel;
+using System.Drawing;
 using System.Linq;
 using System.Runtime.CompilerServices;
 using System.Text;
@@ -91,8 +92,12 @@ namespace Compdfkit_Tools.PDFControl
             get => _imagePath;
             set
             {
-                if (UpdateProper(ref _imagePath, value))
+                if (CommonHelper.IsImageCorrupted(value))
                 {
+                    return;
+                }
+                if (UpdateProper(ref _imagePath, value))
+                { 
                     watermarkData.ImagePath = _imagePath;
                 }
             }
@@ -348,7 +353,6 @@ namespace Compdfkit_Tools.PDFControl
 
         }
 
-
         private void ImagePathBtn_Click(object sender, RoutedEventArgs e)
         {
             string filePath = CommonHelper.GetExistedPathOrEmpty("image (*.jpg;*.png;*.bmp;*.jpeg;*.gif;*.tiff;)|*.jpg;*.png;*.bmp;*.jpeg;*.gif;*.tiff;");
@@ -454,12 +458,12 @@ namespace Compdfkit_Tools.PDFControl
         {
             if(watermarkData.Type == C_Watermark_Type.WATERMARK_TYPE_TEXT && string.IsNullOrEmpty(watermarkData.Text))
             {
-                MessageBox.Show("Watermark text is empty", "Warning", MessageBoxButton.OK);
+                MessageBox.Show(LanguageHelper.SecurityManager.GetString("Warn_EmptyWatermarkText"), "Warning", MessageBoxButton.OK);
                 return;
             }
             if (watermarkData.Type == C_Watermark_Type.WATERMARK_TYPE_IMG && string.IsNullOrEmpty(watermarkData.ImagePath))
             {
-                MessageBox.Show("Watermark image is empty", "Warning", MessageBoxButton.OK);
+                MessageBox.Show(LanguageHelper.SecurityManager.GetString("Warn_EmptyWatermarkText"), "Warning", MessageBoxButton.OK);
                 return;
             }
             this.Close();

+ 1 - 1
Demo/Examples/PDFViewer/Properties/AssemblyInfo.cs

@@ -7,7 +7,7 @@ using System.Windows;
 [assembly: AssemblyTitle("PDFViewer")]
 [assembly: AssemblyDescription("")]
 [assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("PDF Tecnologies, Inc.")]
+[assembly: AssemblyCompany("PDF Technologies, Inc.")]
 [assembly: AssemblyProduct("PDFViewer")]
 [assembly: AssemblyCopyright("Copyright © 2014-2023 PDF Technologies, Inc. All Rights Reserved.")]
 [assembly: AssemblyTrademark("")]