레이블이 PDF인 게시물을 표시합니다. 모든 게시물 표시
레이블이 PDF인 게시물을 표시합니다. 모든 게시물 표시

2010년 6월 1일 화요일

GotD - PDF OCR

Giveaway of the Day - PDF OCR

하루에 하나씩 정품 소프트웨어를 주는 Giveaway of the Day 홈페이지에서 2010년 6월 1일PDF OCR를 준다고 합니다.

Giveaway of the Day 홈페이지

Giveaway of the Day 홈페이지 - 오늘은 PDF OCR 프로그램이 공짜!

프로그램 설명

PDF OCR 프로그램은 스캔한 PDF 종이 책과 문서를 편집할 수 있는 전자 텍스트 파일로 빠르고 쉽게 변환하는 OCR 기술에 바탕을 두고 있습니다. PDF OCR 프로그램은 MS 워드 없이 OCR 결과를 편집할 수 있는 내장 텍스트 편집기를 가지고 있습니다.

PDF OCR 프로그램은 또한 PDF 파일의 모든 페이지를 텍스트로 한번에 변환하는 일괄 변환 모드를 지원합니다. PDF OCR 프로그램은 Scanned Image To PDF 변환기(Scanned Image To PDF Converter)를 가지고 있습니다. 그것은 사용자가 소유의, 스캔한 PDF 책을 만들 수 있음을 뜻합니다.

프로그램 정보

  • 사용자 평가 (2010년 6월 1일 19:37:25 현재) : 좋아 80 / 싫어 113 (사용자 평가 보러 가기)
  • 시스템 요구사항
    • 운영체제 : Windows ME/2000/XP/2003/Vista/7
    • 하드 디스크 여유 공간 : 33.4 MB (설치용)
  • 제공자 : PDFZilla.com (피디에프질라닷컴)
  • 제공자 홈페이지 : http://www.pdfocr.net/
  • 파일 크기 : 14.5 MB
  • 가격 : 이 프로그램은 39.95달러입니다. 그러나 Giveaway of the Day 방문자에게는 시간 제한(time-limited)으로 무료로 제공됩니다.
  • 시간 제한 : 2010년 6월 1일 오후 4시부터 2일 오후 4시까지 (한국 시간)

다운로드 및 설치

Giveaway of the Day - PDF OCR 페이지에서 정해진 기간 동안 다운로드할 수 있습니다.

다운로드 받은 파일의 압축을 풀고, readme.txt 파일을 잘 읽고 실행하십시오. 이 readme.txt 파일은 다운로드 받은 모든 압축 파일 안에 들어 있습니다. 조심스럽게 소프트웨어를 설치한 뒤에 활성화하면 됩니다.

압축 푼 뒤의 디렉터리

압축 푼 뒤의 디렉터리

위 그림처럼, 압축을 풀면, 파일이 둘 또는 셋 나타나게 됩니다. 이때 readme.txt 파일과 Setup.exe 파일은 반드시 존재합니다.

활성화한 뒤 첫 실행 화면

활성화한 뒤 첫 실행 화면

활성화한 뒤 실행 화면 : Scanned PDF to Text 1

활성화한 뒤 실행 화면 : Scanned PDF to Text 1

활성화한 뒤 실행 화면 : Scanned PDF to Text 2

활성화한 뒤 실행 화면 : Scanned PDF to Text 2

활성화한 뒤 실행 화면 : Scanned Image to Text 1

활성화한 뒤 실행 화면 : Scanned Image to Text 1

활성화한 뒤 실행 화면 : Scanned Image to Text 2

활성화한 뒤 실행 화면 : Scanned Image to Text 2

약관 및 조건

당신이 Giveaway 기간에 다운로드하여 설치한 소프트웨어에 대해 다음과 같은 중요한 제한이 있음을 기억하기 바랍니다.

  1. 무료 기술 지원을 받을 수 없습니다. (No free technical support)
  2. 다음 버전의 무료 업그레이드를 받을 수 없습니다. (No free upgrades to future versions)
  3. 엄격하고 순수하게 비상업적 사용만 허용됩니다. (Strictly non-commercial usage)

이 소프트웨어 제품은 묵시적이든 명시적이든 어떠한 종류의 보증없이 "있는 그대로"("AS IS") 제공됩니다. 제한 없이, 법률로써 허용되는, 다운로드한 소프트웨어 제품의 품질 및 성능을 비롯한 모든 위험을 최종 사용자가 부담해야 합니다.
THIS SOFTWARE PRODUCT IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT LIMITATION, TO THE FULLEST EXTENT ALLOWABLE BY LAW, END USER ASSUMES THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE DOWNLOADED SOFTWARE PRODUCT.

기타

  • 한글/한국어 지원
    • 설치 프로그램에서 한글/한국어 지원 : 아니오 (영어)
    • 실행 시 프로그램 메뉴에서 한글/한국어 지원 : 아니오 (영어)
  • 설치 시 및 실행 시 작업
    • 설치 시 프로그램 종료 : 아니오.
    • 설치 후 자동 업데이트 : 지원 안함
    • 설치 후 재시작 : 아니오.
    • 실행 시 재시작 : 예 - 활성화한 뒤에 재시작해야 함.
  • 설치 시 라이선스 : 비등록판 - 활성화를 통해 등록판으로 바뀝니다. 활성화에 대해서는 GotD - PDFZilla 1.2.9 문서를 참조하십시오.

덧붙이는 말

GotD - PDFZilla 1.2.9 프로그램처럼 로마자 사용자에게는 대단히 유용해 보이지만, 반면에 동양 한자 문화권이나 한글 문화권에서는 그다지 유용하지 않습니다.

로마자 문서를 많이 다루는 사람이 아니라면, 절대 설치를 권장하지 않습니다. 설치하지 않는 것이 낫습니다.

관련 문서

내부 문서

  1. GotD - Paragon Virtualization Manager 9.5 Personal (English) - 다운로드 등에 대한 설명
  2. GotD - YouTube Music Downloader 3.2 - readme.txt 파일 등에 등록번호가 들어 있을 경우 백업하는 방법에 대한 설명
  3. GotD - Wise Disk Cleaner 5.2 Professional - Activate.exe 파일을 실행함으로써 활성화하는 방법에 대한 설명
  4. GotD - Wondershare Photo Collage Studio 4.2.12 - 이메일로 등록 번호를 받는 경우 활성화하는 방법과 백업하는 방법에 대한 설명
  5. GotD - Audio Speed Changer Pro - 포터블 버전이 포함된 경우에 대한 설명

외부 문서

이 글은 스프링노트에서 작성되었습니다.

2010년 5월 7일 금요일

GotD - PDFZilla 1.2.9

Giveaway of the Day - PDFZilla 1.2.9

하루에 하나씩 정품 소프트웨어를 주는 Giveaway of the Day 홈페이지에서 2010년 5월 7일PDFZilla 1.2.9를 준다고 합니다. 참고로 PDFZilla.com에서는 여러 무료 프로그램을 함께 배포하고 있습니다.

  • 참고 1 : 여기에 나온 설명문은 기본적으로 giveawayoftheday.com 의 내용을 그대로 옮긴 수준입니다. 따라서 이 글을 이용할 때에는 크리에이티브 커먼즈 저작자표시-비영리-변경금지(CC-BY-NC-ND) 2.0 라이선스에 따라 비상업적 용도로 수정하지 않고 이용해 주십시오.
  • 참고 2 : 이 프로그램은 옛 버전의 PDF 제작 방식(PDF 1.4 이하)으로 제작한 PDF 파일에 포함된 한국어/한글 및 동양 언어는 정확하게 변환하지 못합니다. 이는 이 프로그램의 문제가 아니라, PDF 1.4 이전 버전에서 동양 언어 지원이 되지 않았기 때문입니다. 그러므로 해당 PDF 파일의 버전이 PDF 1.5 이상인지 확인하고 사용해 주십시오. 다만 제 개인적으로는 절대 이 프로그램의 사용을 권장하지 않습니다.
Giveaway of the Day 홈페이지

Giveaway of the Day 홈페이지 - 오늘은 PDFZilla 1.2.9 프로그램이 공짜!

프로그램 설명

PDFZilla(PDFZilla) 프로그램은 데스크탑 응용 프로그램으로, 빠르고 정확하게 PDF 파일을 편집할 수 있는 MS 워드 문서 또는 리치 텍스트(RTF) 문서, 일반 텍스트 문서, 이미지, HTML 파일, 쇼크웨이브 플래시(SWF) 파일로 변환해 줍니다.

PDFZilla 프로그램은 대부분의 유명한 파일 형식 - DOC, RTF, TXT, BMP, JPG, GIF, PNG, TIF, HTML, SWF -을 지원합니다.PDFZilla 프로그램은 또한 일괄 변환 모드 및 페이지 선택 기능을 지원합니다.

프로그램 정보

  • 사용자 평가 (2010년 5월 7일 23:07:39 현재) : 좋아 173 / 싫어 76 (사용자 평가 보러 가기)
  • 시스템 요구사항
    • 운영체제 : Windows Me, 2000, XP, 2003, Vista
    • CPU : 최소 펜티엄 이상 / 펜티엄 4 및 그와 동급 이상 권장
    • RAM : 최소 128 MB / 256 MB 이상 권장
    • 하드 디스크 여유 공간 : 20 MB (설치용)
  • 제공자 : PDFZilla.com (피디에프질라닷컴)
  • 제공자 홈페이지 : http://pdfzilla.com/
  • 파일 크기 : 6.58 MB
  • 가격 : 이 프로그램은 29.95달러입니다. 그러나 Giveaway of the Day 방문자에게는 시간 제한(time-limited)으로 무료로 제공됩니다.
  • 시간 제한 : 2010년 5월 7일 오후 4시부터 8일 오후 4시까지 (한국 시간)

다운로드 및 설치

Giveaway of the Day - PDFZilla 1.2.9 페이지에서 정해진 기간 동안 다운로드할 수 있습니다.

다운로드 받은 파일의 압축을 풀고, readme.txt 파일을 잘 읽고 실행하십시오. 이 readme.txt 파일은 다운로드 받은 모든 압축 파일 안에 들어 있습니다. 조심스럽게 소프트웨어를 설치한 뒤에 활성화하면 됩니다.

압축 푼 뒤의 디렉터리

압축 푼 뒤의 디렉터리

위 그림처럼, 압축을 풀면, 파일이 둘 또는 셋 나타나게 됩니다. 이때 readme.txt 파일과 Setup.exe 파일은 반드시 존재합니다.

설치한 뒤 첫 실행 화면 - 라이선스 확인

설치한 뒤 첫 실행 화면 - 라이선스 확인

설치한 뒤 첫 실행 화면 그림의 왼쪽 아래를 보면 비등록판의 제한 사항, 곧 8개의 파일만 변환할 수 있다는 사실이 적혀 있습니다. 이 점을 잘 숙지하여 반드시 등록하기 바랍니다.

약관 및 조건

당신이 Giveaway 기간에 다운로드하여 설치한 소프트웨어에 대해 다음과 같은 중요한 제한이 있음을 기억하기 바랍니다.

  1. 무료 기술 지원을 받을 수 없습니다. (No free technical support)
  2. 다음 버전의 무료 업그레이드를 받을 수 없습니다. (No free upgrades to future versions)
  3. 엄격하고 순수하게 비상업적 사용만 허용됩니다. (Strictly non-commercial usage)

이 소프트웨어 제품은 묵시적이든 명시적이든 어떠한 종류의 보증없이 "있는 그대로"("AS IS") 제공됩니다. 제한 없이, 법률로써 허용되는, 다운로드한 소프트웨어 제품의 품질 및 성능을 비롯한 모든 위험을 최종 사용자가 부담해야 합니다.
THIS SOFTWARE PRODUCT IS PROVIDED "AS IS" WITHOUT ANY WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED. WITHOUT LIMITATION, TO THE FULLEST EXTENT ALLOWABLE BY LAW, END USER ASSUMES THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE DOWNLOADED SOFTWARE PRODUCT.

기타

  • 한글/한국어 지원
    • 설치 시 한글/한국어 지원 : 아니오 (영어)
    • 실행 시 한글/한국어 지원 : 아니오 (영어). 다만 변환 문서에서는 다국어를 지원하며, PDF 파일의 버전에 따라 결과가 매우 차이가 납니다.
  • 설치 시 및 실행 시 작업
    • 설치 시 프로그램 종료 : 아니오.
    • 설치 후 자동 업데이트 : 지원 안함
    • 설치 후 재시작 : 아니오.
  • 설치 시 라이선스 : 비등록판 - 활성화를 통해 등록판 라이선스로 바뀝니다.
    1. 설치 후 실행 화면에서 Register 아이콘(아래 빨간 네모 표시)을 클릭합니다.
      등록 1 - 설치 후 실행 화면

      등록 1 - 설치 후 실행 화면

    2. 그러면 위 등록 1 그림처럼 Register 대화상자가 나타납니다. 위 공백 부분에 등록 코드를 입력하면 됩니다. 등록 코드는 readme.txt 파일에 들어 있습니다.
      등록 2 - 등록 성공 화면

      등록 2 - 등록 성공 화면

    3. 등록 후 스크린샷
  • 기타 : 한국어/한글과의 호환성 문제가 생길 수 있으므로 이 프로그램의 사용을 권장하지 않습니다.

버전 호환성 문제

위의 참고에서 말했듯이 PDF 파일의 버전에 따라 변환 결과가 상당히 차이가 납니다. PDF 형식에서 공식적으로 다국어가 지원된 때는 2003년 PDF 1.5 버전이 발표된 뒤이기 때문입니다. 다만 어느 쪽이든 이 프로그램의 사용을 권장하지 않습니다.

PDF 1.4 이전

PDF v1.4 예제 파일

PDF v1.4 예제 파일

PDF v1.4 예제 파일로 변환된 MS 워드 문서

PDF v1.4 예제 파일로 변환된 MS 워드 문서

뭐, 글로 나타낼 필요가 없겠지요?

PDF 1.5 이후

PDF v1.5 이상의 예제 파일

PDF v1.5 이상의 예제 파일

PDF v1.5 이상의 예제 파일로부터 변환된 MS 워드 파일

PDF v1.5 이상의 예제 파일로부터 변환된 MS 워드 파일

상당히 깔끔하지만, 문서 곳곳에 문서 레이아웃이 망가진 부분이 보입니다. 그다지 보기 좋지 않네요.

관련 문서

내부 문서

  1. GotD - Paragon Virtualization Manager 9.5 Personal (English) - 다운로드 등에 대한 설명
  2. GotD - YouTube Music Downloader 3.2 - readme.txt 파일 등에 등록번호가 들어 있을 경우 백업하는 방법에 대한 설명
  3. GotD - Wise Disk Cleaner 5.2 Professional - Activate.exe 파일을 실행함으로써 활성화하는 방법에 대한 설명
  4. GotD - Wondershare Photo Collage Studio 4.2.12 - 이메일로 등록 번호를 받는 경우 활성화하는 방법과 백업하는 방법에 대한 설명
  5. GotD - Audio Speed Changer Pro - 포터블 버전이 포함된 경우에 대한 설명

외부 문서

이 글은 스프링노트에서 작성되었습니다.

2010년 1월 24일 일요일

유니코드 문자표는 없나요?

나는 ᄒᆞᆫ글을 자주 쓰는데, 가끔 ᄒᆞᆫ글에 없는 한자를 볼 때면 난감하기 그지 없습니다. 또 가끔이지만 유니코드의 코드 목록을 알고 싶어하는 사람이 있는데, 그럴 때도 참 난감합니다. 뭐, 난감한 이유는 그 답이 어려워서가 아니라 한글 자료가 부족하기 때문입니다. 그런데 실상 그 자료를 보면 한국어를 꼭 알 필요는 없음을 알게 됩니다. 코드표 또는 문자표라는 것은 그저 글자만 죽 나열한 것이기 때문입니다.

유니코드의 코드표 - 한 글자 찾기

유니코드의 문자 목록은 당연한 말이겠지만, 유니코드 컨소시엄 홈페이지(http://www.unicode.org/)에서 구하면 됩니다. 그런데 그걸 알려주면 영어라고 싫어하거나 화를 내는 사람이 있습니다. 앞서 말한 "난감한 이유"가 이것입니다.

각설하고 유니코드 문자 목록이 기록된 문서를 찾아가 봅시다.

유니코드 컨소시엄 홈페이지

유니코드 컨소시엄 홈페이지

홈페이지에 접속한 뒤에는 목적을 정확히 정해야 합니다. 이 사이트에는 매우 많은 정보가 있어서 정확한 목적에 맞는 자료를 찾기가 오히려 쉽지 않기 때문이죠. 일단 문자 목록 또는 코드표(문자표)만을 찾아봅시다.

코드표를 찾는 이유가 그저 한두 글자를 찾을 생각이라면 그냥 코드표(Code Charts) 페이지를 찾으면 됩니다.

코드표 페이지 찾아 가기

코드표 페이지 찾아 가기

유니코드 컨소시엄 홈페이지에서 The Unicode Standard를 클릭, Code Charts를 클릭합니다.

유니코드 문자표 페이지

유니코드 문자표 페이지

위와 같이 언어별로 코드 영역별로 구분이 되어 있습니다. 오른족에 보이는 CJK로 시작하는 부분이 바로 한자에 대한 유니코드입니다. CJK는 Chinese, Japanese, Korean을 합쳐서 부르는 명칭인데, 세 나라 언어에서 공통된 부분이 바로 한자입니다. 친절하게 괄호로 묶어서 Han이라고 표기해 주었죠.

만약 코드 번호를 알고 있다면 맨 위에 보이는 Look up by character code: 라는 부분에 입력하면 됩니다. 시험삼아 004B를 찾아 보았습니다. 004B는 영문자 K 입니다. 유니코드에서는 Latin(라틴 문자)으로 표기되어 있습니다.

찾을 코드 번호를 입력하고 [Go]를 클릭!

찾을 코드 번호를 입력하고 [Go]를 클릭!


정상적으로 찾아준 화면

정상적으로 찾아준 화면

위의 화면은 정상적으로 찾아준 화면입니다. http로 시작하는 곳을 살펴보면, 우선 http://www.unicode.org/charts/PDF/U<입력한 코드 번호가 들어 있는 영역>.pdf 라는 형식을 가지고 있습니다. 그리고 그 뒤에 (0.4 MB)라는 형태로 pdf 파일의 용량을 표시하고 있지요.

그렇다면 존재하지 않은 유니코드 번호를 입력하면 어떻게 될까요? ᄒᆞᆫ글에서 가끔 나타나는 F로 시작하는 유니코드 주소를 입력해 보겠습니다. F0704를 입력하기로 하죠.

존재하지 않으리라 여겨지는 코드 번호를 입력하고 [Go]를 클릭!

존재하지 않으리라 여겨지는 코드 번호를 입력하고 [Go]를 클릭!


얼핏 보면 정상적으로 찾아준 듯싶은 화면

얼핏 보면 정상적으로 찾아준 듯싶은 화면

위 화면은 얼핏 보면 정상적으로 찾아주었다고 여겨집니다. 하지만 결정적으로 용량 부분이 특이합니다. 바로 (0.0 MB)이라고 되어 있지요. 펄 스크립트가 자동으로 생성해 주는 웹페이지이기 때문에 나타나는 현상으로 여겨집니다. 아무튼 저렇게 용량이 0.0 MB이면 파일이 없는 것이고, 따라서 그 번호를 가진 유니코드는 현재 존재하지 않습니다.

유니코드의 코드표 - 언어별 찾기

유니코드 문자표 페이지에서 자신이 자주 쓰는 언어의 코드표만 받아서 보면 됩니다. 클릭하면 다운로드가 되거나 웹브라우저에서 바로 볼 수 있습니다.

하나하나 받기 귀찮은 사람은 http://www.unicode.org/charts/PDF/ 라는 주소에서 플래시겟 등의 다운로드 관리자를 사용하여 몽땅 내려받을 수도 있습니다.

유니코드의 코드표 전체 찾기

유니코드 전체의 코드 번호 및 코드표를 찾고 싶다면 The Unicode Standart를 클릭한 뒤, 이어서 Latest Version을 클릭합니다. 그러면 현재 존재하는 가장 최신 버전의 웹페이지로 이동합니다.

유니코드 최신 버전 페이지 찾아 가기

유니코드 최신 버전 페이지 찾아 가기


Unicode 5.2.0 웹페이지 - 현재 최신 버전입니다.

Unicode 5.2.0 웹페이지 - 현재 최신 버전입니다.

여기에서 우리가 찾으려는 자료는 유니코드 코드표 전체입니다. 앞서 유니코드 문자표 페이지에서도 유니코드 코드표 전체를 보았습니다만, 여기에서 찾는 것은 그렇게 나뉜 자료가 아니라 한데 묶인 자료입니다. 그렇게 유니코드 문자가 한데 묶인 자료를 유니코드 캐릭터 데이터베이스(the Unicode Character Database (UCD))라고 부릅니다.

왼쪽에 보이는 5.2.0 UCD 부분이 우리가 찾는 그것입니다.

왼쪽에 보이는 5.2.0 UCD 부분이 우리가 찾는 그것입니다.

왼쪽에 있는 사항을 설명하자면 다음과 같습니다.

  • (files) : 유니코드 표준 5.2.0의 최종 데이터 파일을 모아두었습니다. 우리가 찾으려는 파일도 여기에 있습니다. 세 개의 하위 디렉터리가 있는데, "ucd" 디렉터리는 UCD의 데이터 파일이 들어 있고, "charts" 디렉터리에는 유니코드 5.2.0 표준에 정확히 대응하는 코드표PDF 파일 형태로 들어 있습니다(The "charts" subdirectory contains an archival set of pdf code charts corresponding exactly to Version 5.2.0.). 마지막으로 "ucdxml" 디렉터리에는 UCD의 XML 버전이 들어 있습니다.
  • (about) : UCD에 대한 대략적인 설명이 들어 있습니다.
  • 5.2.0 Zipped files (for bulk download) : 유니코드 5.2.0 표준의 주요 부분으로 이루어진 Zip 파일을 다운로드합니다.

(files)을 클릭하여 디렉터리에 들어갑시다.

유니코드 표준 5.2.0의 최종 데이터 파일이 있는 디렉터리

유니코드 표준 5.2.0의 최종 데이터 파일이 있는 디렉터리

위 그림에서 charts를 클릭합니다. 이 모습은 웹브라우저마다 달라지므로 대충 비슷한 형태나 낱말을 찾아야 합니다.

위의 화면에 나타난 PDF 파일 3개가 전부입니다. 그런데 용량이 장난 아니게 큽니다. 이제까지 멀티미디어 파일이 아닌 일반 문서 파일이 저렇게 큰 것은 처음 봤습니다.

다운로드할 때 속도는 그리 빠른 편이 아니므로 느긋하게 기다려야 합니다. 실제 코드표에 해당하는 파일은 CodeCharts-MulticolHan.pdf 파일(71M, 한자 영역 데이터), CodeCharts-noHan.pdf 파일(15M, 한자 영역을 제외한 데이터)입니다. 이 두 파일은 무려 1천 쪽이 넘는 방대한 분량이므로 그냥 그러려니 하십시오. 그리고 RSIndex.pdf 파일(24M, 완벽한 유니한 부수별 한자 색인(Unihan Radical Stroke Index)) 파일입니다. 이것도 나름대로 쓸모가 있습니다.

이 파일을 모두 다 받아서 적당한 곳에 둔 뒤 PDF 파일 뷰어로 살펴보면 됩니다. 사용은 각자 알아서 하기 바랍니다. 저는 물가에 데려갈 수는 있어도 물을 떠먹일 재주는 없는 사람입니다.

덧붙이는 말

앞으로 이 코드표 파일을 참조하는 일이 생길 수도 있습니다. 그러므로 받아 두면 게시글을 읽는 데도 도움이 되리라 생각합니다. 그리고 PDF 뷰어 프로그램은 어도비 어크로뱃 리더가 가장 좋습니다. 물론 유니코드 컨소시엄에서 받은 자료만 본다면 다른 뷰어도 좋다. 하지만 현재까지 옛한글 등을 보기에는 가장 좋은 PDF 뷰어입니다. 단점은 지나치게 무거워서 자주 쓰기에는 여러 모로 부담이 되는 프로그램입니다.

관련 문서

내부 문서

외부 문서

이 글은 스프링노트에서 작성되었습니다.

2009년 4월 9일 목요일

티스토리 인쇄CSS 적용하기

팁텍

티스토리는 인쇄 페이지 기능을 지원하지 않는다. 그러다가 인쇄CSS를 이용하면 어느 정도 자신이 바라는 부분만 인쇄할 수 있지 않을까 생각하여 이 팁을 작성하게 되었다.

팁의 발견

티스토리에서 인쇄 페이지를 지원하지 않는다는 사실은 우연히 알게 되었다. 그러다가 도아의 세상사는 이야기에서 블로그에 PDF 저장 단추를 달자 라는 글을 보게 되었다. 댓글로 의견을 나누는데, CSS 이야기가 나오게 되었고, 그것에서 힌트를 얻어 CSS를 적용해 보게 되었다.

프로그램 설명

CSS에 대한 기본 사용법은 각자 알아서 하기 바란다.

추천 사이트 - Learn CSS (한국어 사이트이지만, 글자가 깨질 수도 있다. 문자셋을 한국어 (UTF-8) 또는 유니코드 (UTF-8)로 맞추어야 한다.)

CSS 만들기

기본적인 부분 인쇄

CSS를 이용하지 않는 방법은 WWW이 생길 무렵부터 쓰던 방법인 드래그&프린트가 있다. 말 그대로 마우스로 화면에서 인쇄하고 싶은 부분을 주~욱 잡아당겨 선택한다. 그리고 메뉴에서 파일-인쇄를 누르면 된다.

마우스로 드래그한 화면

일단은 이렇게 마우스로 좌~악 그어서 선택한다.

파일 메뉴에서 인쇄 선택

파일 메뉴에서 인쇄 선택

페이지 범위-선택 영역, 그 다음에 인쇄를 콕! 눌러주면 된다.

페이지 범위-선택 영역, 그 다음에 인쇄를 콕! 눌러주면 된다.

그러나 이 방법은 웹페이지 방문자가 해야 하는 작업이지, 웹페이지 제작자가 할 수 있는 작업이 아니다. 더구나 마우스 드래그를 막아놓은 웹페이지에서는 통하지 않는다.

인쇄 CSS 이용하기 1

인쇄용 CSS를 이용하면 웹페이지 제작자가 자신이 인쇄로 출력하고 싶은 부분을 정할 수 있다. 인쇄 CSS에서 인쇄하고 싶지 않은 부분에는 display: none 라는 속성을 주면 된다(참조 블로그에 PDF 저장 단추를 달자)

인쇄 CSS 이용하기 2

나는 티스토리에 적용할 때 주로 <div class="_ad"> 또는 <div class="noprint">와 같이 인쇄 금지 항목을 만들었다. 이것을 화면CSS에 응용하면, 화면에만 안 보이는 <div class="noseeing"> 또는 <div class="blind"> 항목을 만들 수도 있다.

참고로 현재 왕미친세상에 적용된 인쇄CSS는 다음과 같다.

  1. /* 이 파일에 적용된 설정은 http://www.w3.org/StyleSheets/home-import.css 파일을 참조하여 만들었습니다. */
  2.  
  3. /* ****************** 프린트 CSS ****************** */
  4. /* 아래에 설정값이 없으면 기본값을 따르게 됩니다. */
  5.  
  6. /* 개요 스타일 설정 */
  7. h1, h2, h3,
  8. h4, h5, h6     { page-break-after: avoid; page-break-inside: avoid }
  9.  
  10. /* 인용 스타일 설정 */
  11. blockquote,
  12. pre     { page-break-inside: avoid }
  13.  
  14. /* 목록 스타일 설정 */
  15. ul, ol, dl     { page-break-before: avoid }
  16.  
  17. /* 링크 스타일 설정 */
  18. a     { font-weight: normal }
  19.  
  20. /* 그림 파일 스타일 설정 */
  21. img     { border: 0; }
  22.  
  23. /* 인쇄에서 제외할 부분 */
  24. script     { display:none } /* 본문 안에 보일 내용을 script 태그 처리했을 경우 주의 요망 */
  25. div script     { display:none } /* IE6 버그가 있음. div.noprint / div._ad 태그 설정이 되어도 인쇄에서 나타남.
  26.                            그러므로 div 태그와 script 태그를 중첩하여 최대한 정돈하게 만듦. */
  27. .noprint     { display:none } /* 말 그대로 인쇄 안함. */
  28. ._ad     { display:none } /* 구글 광고 등은 인쇄 안 함. IE6은 오류가 있어서 그대로 인쇄됨. */
  29. #paging     { display:none } /* 문서 하단의 #paging 아이디는 인쇄 안함 */
  30. #header     { display:none } /* 문서 상단의 #header 아이디는 인쇄 안함 */

일단 저런 식으로 만들 수 있다.

저것을 티스토리에 적용한 다음 출력하고 싶지 않은 부분을 <div class="noprint"></div>로 감싸서 화면에서는 보이지만, 인쇄에서는 보이지 않게 했다.

  • 참고 1 : 모든 경우에 적용할 수 있는 클래스 이름을 만들려고 한다면, <div class="displaynone"> 또는 <div class="nodisplay">를 추천한다. 이것은 화면CSS, 인쇄CSS, 음성CSS 등에서 같은 이름으로 쓸 수 있기 때문이다. 이 display:none와 비슷해서 나중에 적용할 값을 기억하기에도 좋다. 참고로 display:none은 사용자에게 "보여주지 않는다."라는 뜻이 아니다. 이것은 "사용자에게 내보내는 출력이 없다."라는 뜻이다.
  • 참고 2 : div script  { display:none } 설정과 div, script { display:none } 설정은 서로 다르다. 앞엣것은 div 태그와 script 태그가 중첩될 경우에 출력을 없게 하라는 뜻이고, 뒤엣것은 div 태그와 script 태그 각각에게 출력이 없게 하라는 뜻이다.

티스토리에 적용

처음 적용 : 실패 1

처음에는 티스토리 스킨 편집 화면을 열었다.

HTML/CSS 편집은 두 부분으로 나뉘는데, 위가 skin.html 파일이고, 아래가 style.css 파일이다. 여기에서 style.css를 편집하였다. 위의 화면은 화면을 최대한 줄인 화면이다. skin.html과 style.css을 클릭하면 편집 영역이 아래로 길어지게 된다.

style.css 파일 맨 아래에 다음과 같이 끼워넣었다.

  1. @media print {
    h1, h2, h3,
    h4, h5, h6     { page-break-after: avoid; page-break-inside: avoid }

    blockquote,
    pre     { page-break-inside: avoid }

    ul, ol, dl     { page-break-before: avoid }

    a     { font-weight: normal }

    img     { border: 0; }

    /* 인쇄에서 제외할 부분 */
    script     { display:none }
    div script     { display:none }
    .noprint     { display:none }
    ._ad     { display:none }
    #paging     { display:none }
    #header     { display:none }

    }

그러나 작동하지 않았다. 다른 부분은 추가 작업이 필요했지만, 최소한 #paging 아이디 선택자와 #header 아이디 선택자를 사용한 곳에서는 적용이 되어야 했기 때문이다. 다시 말해 화면 인쇄를 하면 화면에 나타나지 않아야 하는 #paging 아이디 선택자와 #header 아이디 선택자를 사용한 곳이 버젓히 드러나 있었다.

나는 내 실수를 알지 못해 한참을 헤매야 했다.

참고로 내가 참조한 http://www.w3.org/StyleSheets/home-import.css 파일은 http://www.w3.org/StyleSheets/home.css 파일에서 @import 를 이용하여 불러왔고, http://www.w3.org/StyleSheets/home.css 파일은 http://www.w3.org/ 페이지 헤더 태그에서 link 태그를 이용하여 불러왔다.

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
  4. <head profile="http://www.w3.org/2000/08/w3c-synd/#"><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5.   ... 생략 ...
  6.   <title>World Wide Web Consortium - Web Standards</title>
  7.   <link rel="meta" href="/Overview-about.rdf" />
  8.   <link rel="stylesheet" type="text/css" href="/StyleSheets/home.css" />
  9.   ... 생략 ...
  10. </head>

그런데 내가 쓰는, 그리고 이전에 썼던 티스토리 스킨의 헤더에서 공통적인 부분만 뽑아내면 다음과 같았다.

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <link rel="alternate" type="application/rss+xml" title="[##_title_##]" href="[##_rss_url_##]" />
  6. <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
  7. <link rel="shortcut icon" href="[##_blog_link_##]favicon.ico" />
  8. <title>[##_title_##] :: [##_page_title_##]</title>
  9.  
  10. </head>

차이가 나는 부분은 빨간색으로 처리했다. 저 부분을 발견하지 못해서 헤매고 말았다.

다시 말해 내가 style.css 내용에 아무리 인쇄에 대한 내용을 넣어서 반응하지 않을 수밖에 없었다.

  1. @media print {
  2.     ... 인쇄 CSS 내용 ...
  3. }

위와 같은 설정은 처음부터 무시되었다는 뜻이다. 왜? 처음 읽어들일 때부터 화면(screen)에 맞게 읽어들였다는 뜻이고, 인쇄(print)음성(aural)은 무시한다는 뜻이다. 위에 빨간색으로 된 media="screen"은 그런 뜻이다.

실패 2

HTML/CSS 편집이 안 된다면 파일로 처리하자는 생각을 가지게 되었다. 이때 위의 화면에 있는 "파일 업로드" 탭이 눈에 들어왔다.

흠, 파일업로드를 클릭하여 파일을 찾아 올렸다. 여기에서도 또 실수를 하고 만다. 바로 print.css 파일이 올라간 곳을 확인하지 않아 버렸다. 아무튼 다음과 같이 입력했다.

  1. <link rel="alternate" type="application/rss+xml" title="[##_title_##]" href="[##_rss_url_##]" />
  2. <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
  3. <link rel="stylesheet" media="print" type="text/css" href="./print.css" />
  4. <link rel="shortcut icon" href="[##_blog_link_##]favicon.ico" />

아무 생각 없이 당연히 style.css와 같은 경로에 있겠거니 생각하고, 써넣어 버린 무지막지한 실수였다.

당연히 실패!

그렇다면 파일은 어디에 있을까?

인쇄CSS 적용 성공

인쇄 CSS 파일을 찾아서 다시 파일업로드 탭을 쿡 눌러주었다. 스크롤바를 아래로 주~욱 내리자 보였다.

어라, preview.gif는 다른 파일과 달리 앞에 images/ 가 없었다. 물론 print.css도 다른 파일처럼 images/ 가 붙어 있었다. 결국 preview.gif 파일만 빼면 같은 디렉터리에 있다는 말이었다. 

다시 HTML/CSS 편집 탭으로 넘어가서, 아까 편집했던 부분을 적당히 고쳤다.

  1. <link rel="alternate" type="application/rss+xml" title="[##_title_##]" href="[##_rss_url_##]" />
  2. <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
  3. <link rel="stylesheet" media="print" type="text/css" href="./images/print.css" />
  4. <link rel="shortcut icon" href="[##_blog_link_##]favicon.ico" />

위와 같이 고치자 드디어 작동했다.

좀 더 추가

아까 서버에 올린 인쇄CSS 파일에는 .noprint 및 ._ad 클래스에 대한 설정이 있었다. 이것은 곧 인쇄하지 않을 부분과 광고 부분을 <div></div>로 감쌀 수 있다는 뜻이다. 

또한 마지막으로 화면에는 안 보이지만 인쇄에서만 보일 부분도 설정하였다.

최종적으로 인쇄 CSS 적용 전과 적용 후의 화면 인쇄(일부)는 다음과 같다.  

  • 인쇄CSS 적용 전 인쇄 미리보기 화면 (전체 7쪽[footnote]참고로 파이어폭스는 전체 5쪽이었다.[/footnote]) : 삭제할 내용을 분홍색으로 표시하였다.[footnote]인터넷 익스플로러 6은 CSS를 제대로 지원하지 못하고 있다. 이는 모질라 파이어폭스도 비슷하나, 인터넷 익스플로러에 비하면 매우 양호하다. 또한 인터넷 익스플로러 사용자가 많으므로 자료화면은 인터넷 익스플로러에서 따왔다.[/footnote]

    • 처음 두 쪽은 쓸모 없는 내용이다. 아니 쓸모는 있지만, 인쇄에서는 굳이 필요하지 않다.
    • 3쪽 위의 내용은 "My 블로거 뉴스"이다. 역시 방문자에게는 필요하지 않은 내용이다. 가운데 있는 내용은 구글 광고라서 역시 인쇄에서는 필요하지 않다.
    • 6쪽에서 보이는 것은 위젯이다. 역시 인쇄에서는 필요하지 않다.
    • 7쪽은 티스토리 저작권 정보이다. 화면이 아닌 인쇄 결과는 티스토리 회사에서 만든 페이지 구성대로 되지 않으므로 인쇄할 필요가 없는 부분이다.
      CSS 적용 전 인쇄 미리보기

      CSS 적용 전 인쇄 미리보기

    • 인쇄 CSS 적용 후 화면 (전체 4쪽[footnote]참고로 파이어폭스는 80% 축소 인쇄로 전체 3쪽, 100% 인쇄로 전체 4쪽이었다.[/footnote]) : CSS 적용 전 화면과 비교하면, 헤더 부분이 모두 사라져서 앞부분이 아주 깔끔해졌다.[footnote]파이어폭스에서는 아예 구글 광고가 사라져 있다(두 번째 그림)[/footnote] 또한 화면에는 나타나지 않지만, 맨 마지막 쪽에 위젯이 사라지지 않고 남아 있다. 이 부분도 script 태그와 embed 태그의 영향으로 보인다.[footnote]파이어 폭스에서는 위젯 없이 공백으로 남아 있다. 이 부분에 대해 좀 더 연구가 필요하다.[/footnote]
      CSS 적용 후 인쇄 미리보기 (IE)

      CSS 적용 후 인쇄 미리보기 (IE)

      CSS 적용 후 인쇄 미리보기 1 (FF)

      CSS 적용 후 인쇄 미리보기 1 (FF)

      CSS 적용 후 인쇄 미리보기 2 (FF)

      CSS 적용 후 인쇄 미리보기 2 (FF)

위와 같이, 인터넷 익스플로러 6 환경에서는 구글 광고 및 위젯 사이에는 인쇄CSS 적용에서 약간의 문제가 있다.

적용 및 원리

티스토리에서는 게시글 부분이 따로 분리되어 있다. 그 점을 이용하여 인쇄할 때 나타날 부분만 골라낼 수 있다. 또한 내가 했던 것처럼 자세히 할 필요도 없다. 그저 본문만 남겨도 된다.

이때 몇 가지를 중시해야 한다. 우선 티스토리 HTML 파일은 들여쓰기가 되어 있다. 이때 같은 단계끼리 짝을 짓도록 노력하라. 화면에서 보이지 않게 할 부분을 찾아, 그것이 HTML 코드의 어느 부분인지를 알아내야 한다. 그 뒤에 알맞은 곳에 noprint 클래스를 삽입하여야 한다. 아래 그림에서는 <s_tb> 태그에 noprint 클래스를 삽입하였다.

가장 중요한 것은 본문을 잘 찾아야 한다는 점이다. 왜냐하면 본문은 반드시 인쇄할 때 종이에 출력되어야 하기 때문이다. 자세한 사항은 티스토리 스킨 제작 가이드에 나오는 스킨의 구조를 살펴보시기 바랍니다. 간단히 말한다면, 구글 광고가 없다면, <div class="article"> 태그를 찾아야 합니다. 구글 광고가 있다면 <div class="article">를 찾고, 그 뒤에 <div class="article_post"> 태그를 찾아야 합니다. 특히 <div class="article_post"> 부분은 티스토리 글쓰기에서 입력한 내용이 나타나는 부분입니다. [##_article_rep_desc_##] 치환자가 바로 본문을 만들어 주는 부분입니다. 이때 article 클래스 및 article 클래스 모듬[footnote]article 및 article_ 로 시작하는 클래스를 편의상 article 클래스 모듬이라고 하겠다.[/footnote]이 화면에서 "게시글"을 이루게 됩니다. 앞서 말한 "본문"은 그러한 의미입니다. 따라서 인쇄할 때도 이 article 클래스 모듬 부분이 주를 이루게 해야 합니다.

그 다음으로 중요한 것은 paging 아이디 선택자와 header 아이디 선택자를 찾아야 한다. 이 두 부분은 반드시 인쇄할 때 출력하지 않아야 하기 때문이다. header 부분은 방문객에게는 쓸모가 없는 부분이 많고, paging 부분은 저작권 정보에 해당하는데 화면 구성에서는 옳지만, 인쇄에서는 그 저작권 정보가 그다지 유용하지 않다. 그러므로 인쇄할 때는 나타나지 않게 해야 한다. 하지만 이 부분을 모두 인쇄에서 나타나지 않게 하려면 굳이 HTML에서 찾기보다 인쇄CSS 파일에 아래와 같이 처리하면 된다.

  1. #paging     { display:none }
  2. #header     { display:none }

나머지 부분은 스스로 잘 찾아서 잘 처리하기 바란다.

PDF 저장

원래 인쇄CSS에 관심을 가지게 된 까닭이 바로 웹페이지를 PDF로 저장해 주는 기능 때문이었다. 이것은 도아의 세상사는 이야기의 게시글 블로그에 PDF 저장 단추를 달자를 읽고 나서 생각했다. 자신의 홈페이지나 블로그에 PDF 단추를 다는 기능은 도아의 세상사는 이야기를 참고하기 바란다.

각설하고, 이 PDF 저장 단추도 인쇄CSS를 이용하기 때문에 자신의 홈페이지에 인쇄CSS를 적용해 두면 PDF 저장 기능에서 더 짧은 시간에 그 기능을 이용할 수 있다. PDF 저장 기능은 외국 사이트에 웹페이지 정보를 보내면, 그곳에서 PDF로 저장해서 자신의 컴퓨터로 내려받을 수 있게 해 주는 서비스이기 때문이다.

아래 다운로드는 왕미친세상에 달아둔 PDF 저장 단추를 클릭하여 만든 PDF 파일이다. 참고하기 바란다.

다운로드

다음과 같이 아이디 페이지를 PDF 파일로 변환하였다.

관련 문서

  • 도아 님의 블로그 도아의 세상사는 이야기 : 블로그에 PDF 저장 단추를 달자
  • Learn CSS : CSS 문법을 한국어로 번역해 놓은 사이트. 글자가 깨질 수도 있다. 문자셋을 한국어 (UTF-8) 또는 유니코드 (UTF-8)로 맞추면 해결된다.

이 글은 스프링노트에서 작성되었습니다.