一種基于html標簽進行文檔分頁打印的方法
【技術領域】
[0001]本發明涉及移動執法文檔打印技術領域,尤其涉及一種基于HTML標簽進行文檔分頁打印的方法。
【背景技術】
[0002]執法人員進行現場執法的過程中,需要根據現場執法情況進行筆錄,并將筆錄內容保存在移動端的本地,然后可以將移動端連接打印機,將該內容打印出來,作為歸檔或者立案證據。
[0003]目前,一般將現場執法情況的筆錄內容保存在HTML頁面中,通過設定每個HTML頁面的高度和行數,以及每行的字數,將筆錄內容保存在一頁或多頁HTML頁面中。具體為,如果現場執法情況的字符數小于一頁能夠容納的字符數,則筆錄內容會顯示在一頁;如果筆錄內容的字符數大于一頁能夠容納的字符數,則前一頁填充的內容滿足設定的高度、行數和每行的字數后,繼續在后一頁填充,從而實現分頁。
[0004]但是,由于現場執法筆錄內容是根據現場執法的實際情況進行填寫的,所以對字數的多少或字符的類型沒有規定和限制,在同一份執法筆錄中,可能會涉及多種不同類型的字符,而由于不同類型的字符的占位大小不同,所以,采用上述方法,按照設定好的頁面高度、行數和字數,滿足條件后進行分頁,分頁時如果打印文本中包含較多的數字或字符,那么每行還按固定的字數計算,就會出現一行無法填滿的情況,導致排在前面的頁面中某些位置處出現空白,不顯示字符,從而導致分頁打印后的文件不整齊。
【發明內容】
[0005]本發明的目的在于提供一種基于HTML標簽進行文檔分頁打印的方法,從而解決現有技術中存在的前述問題。
[0006]為了實現上述目的,本發明采用的技術方案如下:
[0007]一種基于HTML標簽進行文檔分頁打印的方法,包括如下步驟:
[0008]SI,將待打印文檔的內容填充到HTML標簽中;
[0009]S2,在每個分頁頁面中設置分頁容器,根據每個分頁頁面中能夠顯示的HTML標簽的高度,設置所述分頁容器的高度,且所述分頁容器的高度與所述分頁頁面中能夠顯示的HTML標簽的高度相同;
[0010]S3,設置每個分頁頁面中的所述分頁容器的OverFlow屬性和Posit1n屬性;
[0011]S4,根據所述分頁容器的OverFlow屬性和Posit1n屬性,將所述HTML標簽填充到所有的所述分頁頁面中。
[0012]進一步地,SI之后,還包括步驟,計算所述HTML標簽的高度。
[0013]更進一步地,S3和S4之間,還包括步驟,根據所述HTML標簽的高度和所述分頁容器的高度,計算所述分頁頁面的數量。
[0014]其中,所述根據所述HTML標簽的高度和所述分頁容器的高度,計算所述分頁頁面的數量,具體包括如下步驟:
[0015]比較所述HTML標簽的高度與第一頁分頁頁面中的所述分頁容器的高度,如果所述HTML標簽的高度小于第一頁分頁頁面中的所述分頁容器的高度,則所述分頁頁面的數量為I ;如果所述HTML標簽的高度大于第一頁分頁頁面中的所述分頁容器的高度,則計算所述分頁頁面的數量。
[0016]其中,所述如果所述HTML標簽的高度大于第一頁分頁頁面中的所述分頁容器的高度,則計算所述分頁頁面的數量,具體為,如果所有的所述分頁頁面中的分頁容器的高度均相等,則利用所述HTML標簽的高度除以一個所述分頁容器的高度,即可得到所述分頁頁面的數量;如果所述分頁頁面中的分頁容器的高度不相等,則從第一頁分頁頁面的分頁容器開始,計算出分頁頁面的數量。
[0017]具體地,對于執法文書的HTML文檔的分頁打印,所述分頁容器的高度,采用如下方法獲得:
[0018]獲取所述分頁容器所在分頁頁面的高度;
[0019]獲取所述分頁頁面中固定模板的高度;
[0020]利用所述分頁頁面的高度減去所述固定模板的高度,得到所述分頁容器的高度。
[0021]優選地,所述分頁頁面的高度為A4打印紙的高度。
[0022]優選地,第一頁分頁頁面中的固定模板包括頂部固定模板和底部固定模板;第二頁至第η頁分頁頁面中的固定模板為底部固定模板。
[0023]優選地,所述HTML標簽為TR、TD或div。
[0024]優選地,所述分頁容器為div。
[0025]本發明的有益效果是:本發明實施例提供的基于HTML標簽進行文檔分頁打印的方法,首先將筆錄內容填充到HTML標簽中,將筆錄內容完整的顯示在HTML頁面中,然后,通過計算分頁頁面中能夠填充內容的分頁容器的高度,設置分頁容器的隱藏屬性和位置屬性,從而在每個分頁頁面的分頁容器中顯示相應的HTML標簽的部分內容,而將其他內容進行隱藏,從而通過利用HTML標簽的隱藏屬性實現了對筆錄內容的分頁打印,并且將每個分頁頁面均填充滿,使分頁頁面更加美觀,而不會出現空白的情況,解決了現有技術中分頁打印文件不整齊的問題。
【附圖說明】
[0026]圖1是本發明實施例提供的基于HTML標簽進行文檔分頁打印的方法的流程示意圖。
【具體實施方式】
[0027]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖,對本發明進行進一步詳細說明。應當理解,此處所描述的【具體實施方式】僅僅用以解釋本發明,并不用于限定本發明。
[0028]如圖1所示,本發明實施例提供了一種基于HTML標簽進行文檔分頁打印的方法,包括如下步驟:
[0029]SI,將待打印文檔的內容填充到HTML標簽中。在實際操作時,為了能夠在一個HTML頁面中顯示完整的待打印文檔,設置HTML標簽的屬性為不隱藏,使能夠顯示完整的待打印文檔,而不會只顯示一部分,隱藏一部分。
[0030]對于執法文書而言,本申請中,待打印文檔為根據執法現場情況生成的筆錄內容。而執法文書中的頂部固定模板和底部固定模板均為模板設置好的,也可以直接顯示在HTML頁面中。
[0031]S2,在每個分頁頁面中設置分頁容器,根據每個分頁頁面中能夠顯示的HTML標簽的高度,設置所述分頁容器的高度,且所述分頁容器的高度與所述分頁頁面中能夠顯示的HTML標簽的高度相同;。
[0032]本發明中,由于分頁頁面需要通過打印機進行打印,所以分頁頁面的高度根據所使用的打印紙的高度設置,如本領域技術人員可以理解的,該高度可以是默認的,也可以是根據需求設置的。但是,HTML頁面的高度,是根據其標簽中填充的現場情況筆錄內容決定的,筆錄內容多,則HTML標簽的高度大,反之,HTML標簽的高度小。
[0033]分頁容器也是HTML標簽的一種,可以通過設置其OverFlow屬性,來實現標簽的分頁,并在不同的分頁頁面中用于顯示頁面內容,通過設置其Posit1n屬性,來實現分頁容器中內容的定位。
[0034]如本領域技術人員可以理解的,如果分頁頁面的高度內沒有其他內容,則分頁容器的高度即為分頁頁面的高度,如果分頁頁面的高度內還要顯示其他內容,則分頁容器的高度即為分頁頁面的高度減去其他內容所占的高度。
[0035]S3,設置每個分頁頁面中的所述分頁容器的OverFlow屬性和Posit1n屬性;
[0036]S4,根據所述分頁容器的OverFlow屬性和Posit1n屬性,將所述HTML標簽填充到所有的所述分頁頁面中。
[0037]本發明中,通過設置HTML標簽的隱藏屬性和位置屬性,將HTML標簽中的待打印文檔的內容,顯示在不同的分頁頁面中。具體工作時,首先要計算每個不同的分頁頁面中設置的分頁容器的高度,根據分頁容器的高度,計算該分頁頁面中能夠顯示的HTML標簽的內容,通過設置HTML標簽的隱藏屬性,在該分頁容器中顯示與其高度對應的HTML標簽的高度的內容,而其他的內容則被隱藏起來,如本領域技術人員可以理解的,HTML標簽的隱藏屬性是其本身具有的,本發明中,比較巧妙的將該隱藏屬性用于文檔分頁打印中;并且通過設置HTML標簽的位置屬性,使不同的分頁頁面可以顯示對應高度的HTML標簽的內容,而將其他的內容隱藏,從而實現分頁。由于在分頁的過程中,是根據不同分頁頁面中分頁容器的高度,利用HTML標簽的隱藏屬性,將相應高度的內容進行顯示,而將其他高度的內容進行隱藏實現的,所以,在分頁過程中,不涉及根據行數和每行的字數固定每頁的字符數,滿足字符數后進行分頁的過程,所以,會將分頁容器填滿,而不會出現空白頁面的情況。
[0038]本發明實施例中,SI之后,還包括步驟,計算所述HTML標簽的高度。
[0039]通過該步驟,可以獲知現場執法筆錄內容的多少,如果筆錄內容比較多,則可以設置較大的分頁頁面的高度值,反之,可以設置較小的分頁頁面的高度值。
[0040]本實施例中,S3和S4之間,還包括步驟,根據所述HTML標簽的高度和所述分頁容器的高度,計算所述分頁頁面的數量。具體可以采用如下方法,包括如下步驟:
[0041]比較所述HTML標簽的高度與第一頁分頁頁面中的所述分頁容器的高度,如果所述HTML標簽的高度小于第一頁分頁頁面中的所述分頁容器的高度,則所述分頁頁面的數量為I ;如果所述HTML標簽的高度大于第一頁分頁頁面中的所述分頁容器的高度,則計算所述分頁頁面的數量。
[0042]其中,本實施例中,如果所述HTML標簽的高度大于第一頁分頁頁面中的所述分頁容器的高度,則計算所述分頁頁面的數量,具體可以為,如果所有的所述分頁頁面中的分頁容器的高度均相等,則利用所述HTML標簽的高度除以一個所述分頁容器的高度,即可得到所述分頁頁面的數量;如果所述分頁頁面中的分頁容器的高度不相等,則從第一頁分頁頁面的分頁容器開始,計算出分頁頁面的數量。比如,所述HTML標簽的高度為200,第一頁分頁頁面的分頁容器的高度為50,第二頁分頁頁面至第η頁分頁頁面的分頁容器的高度為100,則將HTML標簽的內容填充到分頁頁面中,需要(200-50)/100再加