2009-07-31 6 views
2

프로젝트는 CakePHP를 사용하여 개발되었습니다.가변 내용 문서의 페이지 매기기

페이지는 뉴스 피드 기사입니다.

페이지 당 레코드 수 (x) 또는 페이지 당 이미지 수 (x)를 반환하거나 단어/단락/문자 수를 제한하려는 경우 페이지 네이션은 간단하지만 페이지별로 페이지 매김을하려면 페이지의 시각적 길이?

일부 기사에 많은 양의 텍스트와 많은 양의 이미지가 포함되어 있기 때문에 문제가 발생했습니다. 콘텐츠가 완전히 동적 인 경우 페이지 매김을 개발하는 방법에 대해 알고 싶습니다. 이 말은 100 % 텍스트, 텍스트 및 3 장의 사진, 10 장의 사진 등이 될 수 있음을 의미합니다.

코드도 좋지만 개념은 도움이됩니다. 감사합니다!

+0

그래서? 어떻게 구현 했습니까? –

답변

0

cakephp에 대해 모르겠지만 글자 수를 계산하는 방법은 무엇입니까?

기사에 10,000자를두고 각 페이지의 단어 수가 500자를 넘지 않아야한다고 가정 해 봅시다. 평균 단어 길이가 5자인 경우 500 * 5 = 2500 문자로 이동하여 다음 닫는 단락을 찾아 다음 페이지 표시로 가져옵니다. 이미지와 동일한 개념을 사용할 수 있지만 이미지의 높이를 고려하면 ...

소리가 좋습니다?

+1

이미지에서 사용하는 정확한 영역을 찾고 각 페이지에서 사용해야하는 "영역"의 양을 알 수 있으므로 문자가 사용하는 평균 영역을 고려할 수도 있습니다. 원하는 영역에서 이미지 영역을 뺀 다음 문자 영역으로 나누면 원하는 문자 수 (대략)를 알 수 있습니다. – deizel

0

페이지 너비와 이미지 높이를 알기 때문에 텍스트의 픽셀 높이를 대략적으로 계산할 수있었습니다.

그런 다음 이미지, 공백 및 텍스트의 높이를 가져 와서 오류의 특정 비율 내에서 전체 허용 높이에서 빼았습니다. 이는 잘못된 페이지로 이미지를 밀어 넣지 않기 때문입니다. 마지막 10 픽셀이 한도를 초과합니다.

이미지 또는 문장이 적절한 모양을 나타내지 않는 다음 페이지로 밀린 경우 항목을 이전 페이지로 강제 이동하는 방법이 있습니다.