Others

為什麼 PDF 表格在 Excel 轉換過程中會交換行和列

將表格資料從 PDF 提取到 Excel 應產生一個電子表格,其中行和列與原始表格相符。但有時輸出會被轉置。行變成列,列變成行,資料被打亂。這不是隨機錯誤。它具有與PDF到Excel轉換引擎如何解釋表格的視覺佈局相關的特定原因。了解轉置發生的原因有助於您選擇產生正確定向輸出的轉換設定。

要點

當轉換引擎錯誤識別表格的閱讀方向時,就會發生 PDF 到 Excel 的轉置,通常是因為合併儲存格、列寬不一致或文字在行中視覺上對齊但按列順序儲存在 PDF 中。解決方法取決於原因。調整轉換設定、預處理 PDF 以澄清表格結構,或對 Excel 輸出進行後處理以將資料轉回正確的方向,所有這些都可以解決不同的根本原因。

Why Do PDF Tables Swap Rows and Columns During Excel Conversion

為何 PDF 表格資料在擷取過程中會被轉置

在列之間使用前導點或其他視覺連接器的表格(例如用點將章節標題連接到頁碼的目錄)幾乎可以保證轉置,因為前導點創建了一條連續的視覺線,檢測演算法將其解釋為行分隔符號。如果表格稍後將轉換回 Excel,請在建立 PDF 之前從來源文件中刪除前導點。

PDF 的內部結構與視覺佈局一樣重要。在螢幕上看起來完美對齊的表格可能會以與視覺閱讀順序不匹配的順序儲存為文字物件。 PDF 建立軟體決定文字物件順序。某些應用程式會依照文字物件新增至文件的順序寫入文字對象,可能是逐列而不是逐行。這就是為什麼兩個看起來相同的 PDF 會產生不同的轉換結果:它們的內部文字物件順序不同。

PDF 表格不會作為表格儲存在文件中。它儲存為位於頁面上特定座標處的單獨文字物件。轉換引擎必須查看這些座標並推斷哪些文字物件屬於哪些行和列。推理演算法使用文字的水平和垂直對齊將其分組為行和列。當對齊不明確時,演算法可能首先透過垂直對齊對文字進行分組,產生應該是行的列。

合併儲存格是轉位最常見的觸發因素。具有跨越多個列的標題行的表格會建立一種視覺結構,其中頂行與其下方的列邊界不對齊。轉換引擎將合併的標題及其下方的各個欄位視為兩種不同的對齊模式。它可能將合併的標題解釋為多列行,或者可能將下面的列解釋為多行數據,並且歧義導致轉置。第一列包含跨越多行的合併儲存格的表同樣有問題,因為垂直合併會破壞引擎用於水平分組資料的行對齊。

WukongPDF

嘗試 PDF 轉 Excel

無需安裝。直接在您的瀏覽器中工作。

立即開始 →

調整轉換設定以防止轉置

如果 PDF 表格是使用瀏覽器列印功能從網頁產生的,則 PDF 中的表格結構可能比來自專用報告應用程式的表格結構更少。瀏覽器產生的 PDF 文字元素之間的對齊方式通常較鬆散,這使得表格檢測變得更加困難。如果可能,請從原始應用程式將表格匯出為 PDF,而不是從瀏覽器列印,以獲得最可靠的轉換結果。

某些 PDF 表格使用交替行顏色作為讀者的視覺輔助工具。這些交替的顏色可能會混淆表檢測演算法,因為它將不同顏色的行視為屬於不同的表部分。在轉換之前從 PDF 中去除背景顏色,或先轉換為灰度,可以消除這種混亂的根源,並提高表結構檢測的一致性。

如果轉換工具包含表格偵測模式,請啟用它。表檢測告訴引擎尋找網格線、背景陰影和指示表結構的一致文字對齊模式。此模式會套用預設文字擷取以外的額外分析,並且更有可能正確識別行和列方向。有些工具還提供「轉置輸出」功能。複選框專門用於處理預設提取產生轉置資料的情況。如果您的輸出已轉置且該工具具有此選項,則在第二次轉換嘗試時檢查它將產生正確的方向。

對於從掃描的表格中提取 PDF 資料,請專門在表格模式下執行 OCR。專為一般文字辨識而設計的 OCR 引擎可能無法保留文字區塊之間的空間關係。表模式下的 OCR 引擎會保留識別輸出中的行和列結構。 WukongPDF 的 PDF 到 Excel 轉換器包括自動表格結構偵測,可根據視覺對齊和內容模式識別行和列關係,與通用文字擷取相比,減少轉置的可能性。

轉換後修正:將 Excel 資料轉回

轉置後,檢查每列的資料類型。 Excel 可能在轉置後將一列數字解釋為文本,因為轉置的資料在同一列中包含標題標籤。選擇每一列並驗證資料類型是否與內容相符。格式化為文字的數字將無法正確計算,格式化為文字的日期將無法按時間順序排序。轉置後修復資料類型,以確保電子表格功能齊全。

如果輸出已轉置且重新轉換不可行,Excel 只需點擊幾下即可轉置資料。選擇轉置的資料範圍,複製它,右鍵單擊新位置,然後在貼上選項下選擇“轉置”。行和列交換,恢復原始方向。這非常適合簡單的表,其中唯一的問題是行/列反轉。對於包含合併儲存格的複雜表格,Excel 中的轉置無法正確處理合併儲存格,並且可能會產生與原始佈局不同的更糟糕的佈局。

在轉置之前,將原始 PDF 表格與 Excel 輸出進行比較,以確認轉置是唯一的問題。如果輸出還存在未對齊的儲存格、遺失的資料或錯誤合併的儲存格,轉置將無法解決這些問題。在這些情況下,需要手動資料重建或使用不同設定重新轉換。轉置修復是針對資料完整且正確對齊但方向錯誤的特定情況的一鍵式解決方案。

預處理 PDF 以進行更清晰的表格提取

如果 PDF 表是由特定應用程式(例如 SAP、Oracle Reports 或舊大型主機系統)建立的,請在線上搜尋該特定應用程式的 PDF 輸出的已知轉換問題。企業報告系統通常會產生具有可預測的表格結構怪癖的 PDF,並且其他使用者可能已經記錄了該特定來源的最佳轉換設定。有針對性的搜尋可以節省測試多種轉換方法的反覆試驗。

如果特定 PDF 在多次轉換嘗試中始終產生轉置輸出,請在轉換前對 PDF 進行預處理。使用 PDF 編輯器刪除任何可能混淆表格檢測演算法的背景陰影、網格線或裝飾元素。與具有交替行顏色、粗邊框和嵌入圖示的表格相比,具有白色背景上的黑色文字和細而一致的網格線的乾淨表格的轉換更可靠。在轉換之前消除視覺雜訊可以提高轉換引擎正確識別表結構的能力。

對於掃描的表格,請將掃描調整為完全筆直。即使以一度的角度掃描表格也會導致每行稍微傾斜,並且轉換引擎可能會將傾斜解釋為列對齊。大多數掃描軟體都包含糾偏選項,可以自動拉直頁面。在掃描前啟用此選項,或在轉換前對掃描的 PDF 使用傾斜校正工具。直行對於正確的行和列檢測至關重要。

常見問題

將 PDF 表格轉換為 CSV 而不是 Excel 是否可以避免換位問題? CSV 轉換使用與 Excel 轉換相同的表格偵測演算法。如果演算法轉置數據,則 CSV 輸出也將被轉置。輸出格式不影響檢測邏輯。 CSV 確實具有更容易在文字編輯器中檢查的優點,這使得當您開啟檔案並看到預期的 5 列變成了 20 列時,轉置立即可見。

某些類型的 PDF 表格是否會發生更多換位?

是的。具有合併標題單元格的表格、每行列數不一致的表格以及第一列使用垂直文字方向的表格最有可能發生轉置。具有簡單、統一網格結構的表格很少進行交換。表越規則,轉換越可靠。

我可以自動偵測並修正轉置的 Excel 輸出嗎?

根據原始表中的預期數量檢查 Excel 輸出中的列數是一項簡單的自動檢查。如果 PDF 表格有 5 列和 20 行,但 Excel 輸出有 20 列和 5 行,則資料將被轉置。腳本可以檢測到這種不匹配,並轉置資料或標記檔案以供手動檢查。這種自動品質檢查可以在資料進入下游工作流程之前捕獲轉置。

為什麼同一個 PDF 表在一次嘗試中可以正確轉換並在另一次嘗試中轉置?

這通常是由於兩次嘗試使用的轉換設定略有不同,或者轉換工具根據檔案大小或複雜性閾值使用不同的內部處理路徑。如果遇到不一致的結果,請記錄產生正確輸出的確切設置,並將這些設定用於類似表的所有未來轉換。

WukongPDF

嘗試 PDF 轉 Excel

無需安裝。直接在您的瀏覽器中工作。

立即開始 →