나는 아주 솔직하게 보이는 문제가 있지만 깨끗하고 간단한 솔루션을 찾을 수 없습니다.고정 텍스트 형식으로 자유 텍스트 다시 형식화 (C#)
자유롭게 서식이 지정된 텍스트가 있습니다. 이 텍스트는 상당히 길 수 있으며 다양한 길이 (> 120 자)의 단락, 단락 및 빈 줄이 들어 있습니다.
이 텍스트를 고정 된 형식 (예 : 120 자의 줄과 25 줄의 줄)으로 표시해야합니다. 그러나 단락과 빈 줄에 원래 서식을 유지.
한 마디가 중간에 없어야합니다. 우리는 페이지 하단에 새 단락의 단일 라인을 피하고 오히려 다음 페이지 등으로 전체 단락을 이동할 수 있도록 이상적으로 페이지 나누기가 배치해야
단순화 된 샘플 (입력 텍스트) :
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec at magna at tellus vehicula eleifend. Vivamus at est erat. Phasellus eget tincidunt tellus. Integer ultrices dolor a magna congue imperdiet.
Duis est sem, aliquet id fermentum sed, mollis nec metus. Phasellus porttitor porttitor sodales. Aliquam tincidunt convallis massa, sed tempus erat ornare in. Sed scelerisque, lorem accumsan imperdiet accumsan, mauris turpis molestie augue, vehicula egestas tellus quam ac nulla.
In porta augue ac dolor imperdiet semper. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Proin lacus neque, tempor nec feugiat sed, posuere sed lorem.
Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Nulla metus neque, volutpat vitae pharetra rutrum, malesuada in dolor.
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Donec at magna at tellus vehicula eleifend. Vivamus at
est erat. Phasellus eget tincidunt tellus. Integer
ultrices dolor a magna congue imperdiet.
Duis est sem, aliquet id fermentum sed, mollis nec metus.
Phasellus porttitor porttitor sodales. Aliquam tincidunt
convallis massa, sed tempus erat ornare in. Sed scelerisque,
lorem accumsan imperdiet accumsan, mauris turpis molestie
augue, vehicula egestas tellus quam ac nulla.
[pagebreak]
In porta augue ac dolor imperdiet semper. Vestibulum ante
ipsum primis in faucibus orci luctus et ultrices posuere
cubilia Curae; Proin lacus neque, tempor nec feugiat sed,
posuere sed lorem.
Class aptent taciti sociosqu ad litora torquent per conubia
nostra, per inceptos himenaeos. Nulla metus neque, volutpat
vitae pharetra rutrum, malesuada in dolor.
누구나 어떤 아이디어가 :
"고정"너비가 페이지 나누기 (프로그램의 출력)으로 포맷?
여기 정확히 무슨 문제가 있습니까? 그것은 분명하고 쉽게 내게 보인다. 어디서부터 시작해야할지 몰라요. –
@Al과 동의; 지나치게 가혹한 것은 아니지만이 작업의 특정 측면에 대해 혼란 스럽습니까? 아니면 다른 사람을 찾고 있습니까? –
먼저 MAX_LINE_LENGTH 이상으로 올라갈 때까지 단어를 추가하여 시도해 보았습니다. 그런 다음 줄 바꿈을 삽입했습니다. 원본 텍스트의 줄 바꿈은 두 개가 아닌 경우 (즉, 새 단락) 무시됩니다. 줄 바꿈 횟수> MAX_LINES_ON_PAGE 페이지 나누기를 삽입하고 카운터를 재설정하고 계속합니다. 그것은 작동하지만 코드가 정확히 내가 아름답다고 부르는 것은 아닙니다. 그 이유는 누군가가 더 나은 솔루션을 가지고 있는지 물어보고 싶었습니다 :) – Paaland