如何使用 .NET 從文件中刪除條碼

為什麼需要刪除條碼?

您是否收到過需要移除不想要的條碼的文件?也許您正在處理掃描的表單,或者正在清理文件以便重新分發。無論您出於何種原因,GroupDocs.Signature for .NET 都能讓這項任務變得異常簡單。

在本指南中,我們將引導您完成使用 C# 程式碼從文件中尋找和刪除條碼的整個過程。您將能夠以最少的精力在自己的 .NET 應用程式中實現此功能。

開始之前你需要什麼

在深入研究程式碼之前,請確保您已做好一切準備:

熟悉 C# 程式設計的基本知識(不用擔心,我們會清楚地解釋一切) 電腦上安裝了 Visual Studio GroupDocs.Signature for .NET 函式庫(您可以下載 這裡) 包含要刪除的條碼的文檔

設定你的項目

首先,我們需要在 C# 程式碼中包含必要的命名空間。這些命名空間提供了我們需要的所有功能的存取權限:

using System;
using System.IO;
using System.Collections.Generic;
using GroupDocs.Signature;
using GroupDocs.Signature.Domain;
using GroupDocs.Signature.Options;

現在我們已經設定好了導入,讓我們將流程分解為簡單、易於管理的步驟。

如何移除條碼:逐步指南

步驟 1:定義檔案所在的位置

string filePath = "sample_multiple_signatures.docx";
string fileName = Path.GetFileName(filePath);
string outputFilePath = Path.Combine("Your Document Directory", "DeleteBarcode", fileName);

在此步驟中,我們將設定來源文件的路徑以及儲存修改版本的位置。請確保替換 "sample_multiple_signatures.docx" 你自己文檔的路徑,以及 "Your Document Directory" 與您想要儲存結果的資料夾。

步驟 2:建立文件的工作副本

File.Copy(filePath, outputFilePath, true);

這將建立原始文件的副本以供使用,確保我們不會意外修改原始文件。 true 如果目標中存在文件,則參數允許覆寫現有文件。

步驟3:初始化簽名對象

using (Signature signature = new Signature(outputFilePath))
{
    // 我們的其餘代碼將放在這裡
}

在這裡,我們建立了 Signature 類別的一個新實例,它將為我們處理所有文件操作。 using 語句確保我們完成後資源得到正確處置。

步驟 4:在文件中搜尋條碼

BarcodeSearchOptions options = new BarcodeSearchOptions();
List<BarcodeSignature> signatures = signature.Search<BarcodeSignature>(options);

在此步驟中,我們將設定文件中條碼的搜尋。 BarcodeSearchOptions 儘管預設選項在大多數情況下都能很好地發揮作用,但該類別讓我們可以根據需要靈活地自訂搜尋。

步驟5:從文件中刪除條碼

if (signatures.Count > 0)
{
    BarcodeSignature barcodeSignature = signatures[0];
    bool result = signature.Delete(barcodeSignature);
    if (result)
    {
        Console.WriteLine($"Signature with Barcode '{barcodeSignature.Text}' and encode type '{barcodeSignature.EncodeType.TypeName}' was deleted from document ['{fileName}'].");
    }
    else
    {
        Console.WriteLine($"Signature was not deleted from the document! Signature with Barcode '{barcodeSignature.Text}' and encode type '{barcodeSignature.EncodeType.TypeName}' was not found!");
    }
}

現在我們檢查是否找到了任何條碼。如果至少有一個條碼存在,我們將取第一個並嘗試刪除它。刪除後,我們會顯示一則訊息,指示操作成功或失敗。

條碼去除的實際應用

你可能想知道什麼時候會真正用到這個功能。以下是一些常見的場景:

清理包含追蹤條碼的數位化文檔 從行銷資料中刪除過時的二維碼 透過先刪除舊條碼來更新帶有新條碼的文檔 處理使用條碼進行排序但最終存檔中不需要的表單提交

超越基礎

現在您已經了解了基本流程,您可以透過以下幾種方式擴展此功能:

如何一次刪除多個條碼

如果您的文件包含多個要刪除的條碼,您可以簡單地遍歷已發現的條碼簽名清單:

foreach (BarcodeSignature barcodeSignature in signatures)
{
    signature.Delete(barcodeSignature);
    Console.WriteLine($"Deleted barcode: {barcodeSignature.Text}");
}

如何定位特定的條碼類型

您可能只想刪除某些類型的條碼,而保留其他類型的條碼。您可以自訂搜尋選項,如下所示:

BarcodeSearchOptions options = new BarcodeSearchOptions();
options.AllPages = true;  // 搜尋所有頁面
options.EncodeType = BarcodeTypes.QR;  // 僅搜尋二維碼

List<BarcodeSignature> signatures = signature.Search<BarcodeSignature>(options);

總結:通往無條碼文件的道路

在本指南中,我們示範如何使用 GroupDocs.Signature for .NET 從文件中刪除條碼的流程。只需幾行程式碼,您就可以從各種文件格式中偵測並刪除不需要的條碼。

請記住,GroupDocs.Signature 支援多種文件類型,包括 Word、Excel、PDF 等,使其成為滿足所有文件處理需求的多功能解決方案。

準備好在您自己的應用程式中實現條碼移除功能了嗎?立即下載 GroupDocs.Signature for .NET 程式庫並開始使用!如果您遇到任何問題或有疑問, GroupDocs.Signature 論壇 是極佳的支持資源。

常見問題

我可以一次從多頁文件中刪除所有條碼嗎?

是的,您可以透過設定從多頁文件中刪除所有條碼 options.AllPages = true 在您的搜尋選項中,然後刪除返回清單中的每個條碼。

此方法適用於所有類型的條碼嗎?

GroupDocs.Signature 支援多種條碼格式,包括二維碼、Code 128、EAN、UPC 等等。該庫幾乎可以檢測並刪除所有標準條碼類型。

刪除條碼會影響文件中的其他內容嗎?

不,GroupDocs.Signature 僅精確針對條碼元素,而不會影響文件的其餘內容。

我可以在文件的特定區域搜尋條碼嗎?

當然!您可以使用 Rectangle 搜尋選項的屬性僅在文件的某些部分中尋找條碼。

在永久刪除條碼之前可以預覽文件嗎?

是的,您可以先使用搜尋方法找到所有條碼,並將其資訊顯示給用戶,然後在確認後再進行刪除。