0

HTMLテーブルをExcelシートにエクスポートしたい。
フォーマットを保持して画像を追加する必要がなければ、CVS フォーマットでこれを行ったでしょう。

Office 2003 XMLそのためのフォーマットを 使用してみました。

<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
          xmlns:o="urn:schemas-microsoft-com:office:office"
          xmlns:x="urn:schemas-microsoft-com:office:excel"
          xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
          xmlns:html="http://www.w3.org/TR/REC-html40">
    <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
    ...
    </DocumentProperties>
    <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
    ...
    </OfficeDocumentSettings>
    <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
    ...
    </ExcelWorkbook>
    <Styles>...</Styles>
    <Worksheet ss:Name="Sheet1">...</Worksheet>
</Workbook>

そして、それJavaScriptを「ダウンロード」するためのコードdata URI

'data:application/vnd.ms-excel;charset=utf-8, '+
 encodeURIComponent(STRING_XML_REPRESENTATION));

私には2つの問題があります:

  1. xls(またはxlsx)として保存されたドキュメントはOpeOffice\では問題なく開きますが、 では LibreOfficeエラーがスローされます。Excel
  2. ファイルに画像を追加する方法が見つからないようです。

xmlほとんどの場合、デフォルトで Web ブラウザーで開くため、ファイルとして保存したくありません。

4

1 に答える 1

1

ECMA-376 を確認します。Excel は、すべてのファイルが zip コンテナーに含まれていることを想定しています (さらに、いくつかの追加ファイルが必要です[Content_Types].xml) 。

画像は zip コンテナーに追加して参照する必要があります (仕様を確認してください)。

于 2013-10-01T15:29:45.797 に答える