私はpdfファイルをイメージに変換しようとしていて、うまくいきました。しかし、私はそれを実行するためにghostscriptをインストールする必要があります。 ghostscriptをインストールせずに必要なDLLをコピーする方法はありますか? Ghostscript用のC#ラッパーがありますか?その場合、どうすれば使用できますか?ImageMagicでは、GhostscriptをASP.NET MVCで実行する必要がありますか?
public ActionResult UploadPdf(HttpPostedFileBase file)
{
MemoryStream fileStream = new MemoryStream();
file.InputStream.CopyTo(fileStream);
byte[] ss = fileStream.ToArray();
MagickReadSettings settings = new MagickReadSettings();
settings.Density = new Density(100, 100);
List<ImageModel> model = new List<ImageModel>();
using (MagickImageCollection images = new MagickImageCollection())
{
images.Read(ss, settings); // Read PDF file
MemoryStream convertedFile;
foreach (MagickImage image in images)
{
convertedFile = new MemoryStream();
ImageModel innerModle = new ImageModel();
image.Write(convertedFile, MagickFormat.Png);
byte[] byteArray = convertedFile.ToArray();
innerModle.Images = byteArray;
model.Add(innerModle);
convertedFile.Flush();
convertedFile.Dispose();
}
}
return View(model);
}
ビューモデル::
public class ImageModel
{
public byte[] Images{ get; set; }
}
ビュー:
@model List<DocumentViewerPoc.Models.ImageModel>
<h2>UploadPdf</h2>
@foreach (var item in Model)
{
var base64 = Convert.ToBase64String(item.Images);
var imgSrc = String.Format("data:image/gif;base64,{0}", base64);
<img src="@imgSrc" />
}
model-view-controllerタグは、パターンに関する質問用です。 ASP.NET-MVCの実装には特定のタグがあります。 –
それを心に留めておきます:) – user3159792