4

Excel、PowerPoint、PDF、および Word を画像に変換する方法を探しています。Aspose スイートの経験があり、これらすべてが Aspose.PDF スイートで実行できるかどうか、または Aspose.slides と Aspose.word も入手する必要があるかどうかを知っている人がいるかどうか疑問に思っていました。

4

4 に答える 4

3

Aspose.Slides、Aspose.Words、Aspose.Cells、および Aspose.Pdf が必要になるか、Web Apiを使用できます。

于 2012-11-20T08:45:31.180 に答える
2

Office ドキュメントから画像への変換は、サード パーティのコンポーネントを使用せずに行うことができます。以下のコードは、たとえば、特定の範囲を Excel ワークシートから画像に変換します。

重要: [STAThread] 属性でメソッドをマークすることを忘れないでください。

用途:

    using xls = Microsoft.Office.Interop.Excel;
    using System.IO;
    using System.Windows.Forms;

変換コード:

    [STAThread]
    static void Main(string[] args)
    {
        string fileNameToProcess = @"D:\Book2.xlsx";

        //Start Excel and create a new document.
        xls.Application oExcel = new xls.Application();
        xls.Workbook wb = null;
        try
        {
            wb = oExcel.Workbooks.Open(
                fileNameToProcess.ToString(), false, false, Type.Missing, "", "", true, xls.XlPlatform.xlWindows, "", false, false, 0, false, true, 0);
            //wb.RefreshAll();

            xls.Sheets sheets = wb.Worksheets as xls.Sheets;
            xls.Worksheet sheet = sheets[1];

            //Following is used to find range with data
            string startRange = "A1";
            string endRange = "P25";
            xls.Range range = sheet.get_Range(startRange, endRange);
            range.CopyPicture(xls.XlPictureAppearance.xlScreen, xls.XlCopyPictureFormat.xlBitmap);

            System.Drawing.Image imgRange = GetImageFromClipboard();

            imgRange.Save(@"d:\ExcelSheetImage.bmp", System.Drawing.Imaging.ImageFormat.Bmp);

            wb.Save();
            Console.Write("Specified range converted to image successfully. Press Enter to continue.");
        }
        catch (Exception e)
        {
            Console.WriteLine(e.Message);
            //throw;
        }
        finally 
        {
            wb.Close();
            oExcel.Quit();
            oExcel = null;
        }

        Console.ReadLine();
    }

    public static System.Drawing.Image GetImageFromClipboard()
    {
        System.Drawing.Image returnImage = null;

        // This doesn't work
        //if (Clipboard.ContainsImage())
        //{
        //    returnImage = Clipboard.GetImage();
        //}
        //return returnImage;

        // This works
        System.Windows.Forms.IDataObject d = Clipboard.GetDataObject();
        if (d.GetDataPresent(DataFormats.Bitmap))
        {
            returnImage = Clipboard.GetImage();
        }

        return returnImage;
    }
于 2013-02-01T08:46:01.480 に答える
1

私の名前は Nayyer です。Aspose で開発者エバンジェリストとして働いています。

于 2012-11-26T13:04:22.637 に答える