2

以下のこのコードは、.pdf ファイルをアップロードしてから .swf(flash) に変換するために私のコード ビハインドで使用されています。この WriteToFileメソッドは、pdf をサーバー ディレクトリに保存し、Button1_Clickメソッド内で呼び出されます。このButton1_Clicked方法では、pdf をフラッシュ読み取り可能な形式に変換する swftools スイートと共にインストールされた pdf2swf.exe を実行するプロセスを作成しました。

ただし、ダウンロードした pdf は swf に変換されていません。これを使用して、ダウンロードできない形式でサイトのユーザーに表示したいと考えています。Flash ファイル (.swf) を表示する方法は既に知っていますが、変換についてサポートが必要です。

private void WriteToFile(string fileName)
{
    // Create a file

    string path = Server.MapPath("~/");           
    // string filename = FileUpload1.PostedFile.FileName;
    int fileLength = FileUpload1.PostedFile.ContentLength;
    byte[] imageBytes = new byte[fileLength];
    FileUpload1.SaveAs(path + fileName);
}


protected void Button1_Click(object sender, EventArgs e)
{
    int pageNumber = 1;
    string inputfile = FileUpload1.FileName;
    string filename = @"Sports_Events.pdf";
    WriteToFile(FileUpload1.FileName);
    string outputfile = @"pdfdoc.swf";
    System.Diagnostics.Process pdf2swfprocess = new System.Diagnostics.Process();
    // Process pdf2swfprocess = new Process();
    pdf2swfprocess.StartInfo.UseShellExecute = false;
    pdf2swfprocess.StartInfo.RedirectStandardOutput = true;
    pdf2swfprocess.StartInfo.CreateNoWindow = true;
    pdf2swfprocess.EnableRaisingEvents = false;
    pdf2swfprocess.StartInfo.WorkingDirectory = HttpContext.Current.Server.MapPath("~");
    pdf2swfprocess.StartInfo.RedirectStandardError = true;
    pdf2swfprocess.StartInfo.FileName = HttpContext.Current.Server.MapPath("~/PDF2SWF/pdf2swf.exe");
    //pdf2swfprocess.StartInfo.Arguments = inputfile + "-o" + outputfile;
    pdf2swfprocess.StartInfo.Arguments = "\"" + HttpContext.Current.Server.MapPath("~/PDF2SWF/FONTS") + "\"" + " -p " + pageNumber + " " + filename + " -o " + filename + pageNumber + ".swf";
    if (FileUpload1.HasFile)
    {

        try
        {

            pdf2swfprocess.Start();

            pdf2swfprocess.WaitForExit();
            pdf2swfprocess.Close();
        }
        catch (System.Exception)
        {
            Error1.Text = "Error converting file";
        }

    }
    else
    {
        Error1.Text = "The selected file does not exist";
    }
}

関連リンク:

  1. このリンクは、同じ pdf から .swf への変換を試みます

  2. これは、変換を行うためにインストールした swftools バージョン 0.92 とともにインストールされるツール pdf2swf ツールへのリンクです。

  3. この人はそれを機能させる方法を理解しましたが、そのような変更を行う方法がわかりません: SWFTools' pdf2swf: IIS-hosted website から開始した場合、テキストは変換されません

4

0 に答える 0