提示コードですが以下の///
部の内部で.gswin64c.exeが必要で自分はghostscriptを環境にインストールしたのですがこのソフトを配布したいので外部のソフトウェアをインストールしないで.exeに含めたいのですがこれをするにはどうしたらいいのでしょうか?
cs
1using System; 2using System.IO; 3using System.Collections.Generic; 4using System.Linq; 5using System.Text; 6using System.Threading.Tasks; 7using System.Diagnostics; 8 9public class FileData 10{ 11 12 public string? extension; //拡張子 13 public bool isCheck = true; //チェック状態 14 public string inputFilePath; //ファイルパス 15 public string? saveFolderPath; //セーブフォルダパス 16 public string fileName; //ファイル名 17 18 19 20 protected string? getSavePath() 21 { 22 if (saveFolderPath == null) 23 { 24 return null; 25 } 26 else 27 { 28 string name = Path.ChangeExtension(fileName, extension); 29 string path = saveFolderPath + "\\" + name; 30 31 return path; 32 } 33 } 34} 35 36public class Image_Data : FileData 37{ 38 private ImageMagick.MagickImage image; 39 40 public Image_Data(string path) 41 { 42 inputFilePath = path; 43 fileName = Path.GetFileName(path); 44 image = new ImageMagick.MagickImage(path); 45 } 46 47 public void Generate() 48 { 49 image.Write(getSavePath()); 50 } 51 52 public static void Build_PDF(List<ImageMagick.MagickImage> list,string savePath) 53 { 54 ImageMagick.MagickImageCollection build = new ImageMagick.MagickImageCollection(); 55 56 foreach(ImageMagick.MagickImage page in list) 57 { 58 build.Add(page); 59 } 60 61 build.Write(savePath); 62 63 build.Dispose(); 64 } 65 66} 67 68public class PDF_Data : FileData 69{ 70 ImageMagick.MagickImageCollection pageList = new ImageMagick.MagickImageCollection(); 71 72 public PDF_Data(string path) 73 { 74 inputFilePath = path; 75 fileName = Path.GetFileName(path); 76 77 try 78 { 79///////////////////////////////////////////////////////////// 80 pageList.Read(path); //読み込み 81///////////////////////////////////////////////////////////// 82 }catch(ImageMagick.MagickException e) 83 { 84 Console.WriteLine(e.Message); 85 } 86 } 87 88 public void Generate() 89 { 90 int number = 0; 91 foreach(ImageMagick.MagickImage page in pageList) 92 { 93 string path = saveFolderPath + "\\"+fileName+ extension +" "+ number; 94 page.Write(path); 95 96 number++; 97 } 98 } 99 100 101 ~PDF_Data() 102 { 103 pageList.Dispose(); 104 } 105 106} 107 108public class Program 109{ 110 public static void Main() 111 { 112 Console.WriteLine("ファイルパス: "); 113 string path = "C:\\Users\\yw325\\Desktop\\output.pdf"; 114 115 Console.WriteLine("保存ディレクトリパス: "); 116 string save = "C:\\Users\\yw325\\Desktop\\新しいフォルダー"; 117 118 PDF_Data pdf = new PDF_Data(path); 119 120 pdf.saveFolderPath = save; 121 pdf.extension = ".jpeg"; 122 123 pdf.Generate(); 124 125 //GhostscriptPipedOutput gsPipedOutput = new GhostscriptPipedOutput(); 126 127 /* 128 ImageMagick.MagickImage img1 = new ImageMagick.MagickImage("input.HEIC"); 129 ImageMagick.MagickImage img2 = new ImageMagick.MagickImage("input.HEIC"); 130 ImageMagick.MagickImage img3 = new ImageMagick.MagickImage("input.HEIC"); 131 132 ImageMagick.MagickImageCollection images = new ImageMagick.MagickImageCollection(); 133 134 images.Add(img1); 135 images.Add(img2); 136 images.Add(img3); 137 138 139 140 images.Write("output.pdf"); 141 142 //img.Dispose(); 143 images.Dispose(); 144 145 Console.WriteLine("終了"); 146 */ 147 //Console.ReadKey(); 148 } 149 150} 151
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2022/08/01 01:21
2022/08/01 02:19