簡體   English   中英

將html字符串拆分為頁面

[英]Split html string to page

在我的asp.net項目中,我需要向用戶顯示大文檔。 因為文件有很多文字,我需要使用分頁。 每頁應包含約5000個符號。 我想通過邏輯標記(例如<br/> nbsp space拆分頁面。

最好的方法是什么?

謝謝

最簡單的方法是為String創建擴展方法

public static IEnumerable<string> GetPages(this string text, 
    int charsPerPage, string breakChar)
{
    int count = 0;
    int start = 0;
    while (count < text.Length)
    {
        count = Math.Min(text.Length, count + charsPerPage);
        if (count == text.Length)
        {
            yield return text.Substring(start, count - start);
        }
        else
        {
            var nextBreak = text.IndexOf(breakChar, count);
            if (nextBreak == -1)
            {
                yield return text.Substring(start, count - start);
                start = count + breakChar.Length;
            }
            else
            {
                yield return text.Substring(start, nextBreak - start);
                start = nextBreak + breakChar.Length;
            }
        }
    }
}

這可能無法正常工作,因為我沒有正確測試過-但您知道了

你可以這樣使用

var pages = text.GetPages(5000, "<br/>");

最簡單的方法是,如果每個文檔的每一頁只是數據庫中的一條記錄,而該文檔記錄作為主記錄可以將它們保持在一起。 但是,在不知道文檔結構的情況下,很難判斷這樣的事情是否可行。 那么,大文件...它們是什么? PFD文件? Word文件? 還有嗎 是否可以將它們拆分為某些數據庫結構的頁面?

您可以在http://splity.sourceforge.net/搜索HTML分割器,例如一個。

頁面在HTML中確實沒有任何意義。 瀏覽器可以是從27英寸全屏高分辨率顯示器到手機(甚至是80x25的舊字符顯示器)的任何地方。一種尺寸肯定不能滿足所有需求。

如果您真的很關心頁面格式設置,那么PDF是您的最佳選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM