PDF 전자책은 Airtable로 만들어진 버전과 달리, 계속 업데이트가 되지 않습니다.
Airtable은 제가 조금씩이라도 업데이트를 하면, 모두가 최신의 내용을 같이 볼 수
있지만, PDF 전자책은 현재의 버전이 계속 유지가 됩니다.
시중에 있는 경영지도사 2차 시험 기출문제 풀이집 가운데, 가장 방대하고 상세한
분량을 담고 있으며, 문제마다 관련 단원(주제) 태그가 붙어 있어, 관련 단원의
학습과 병행할 수 있도록 했습니다. 2차 시험 준비하시는 분들에게는 이 한 권으로
다른 기출문제 풀이를 찾아 헤매실 필요가 없도록 구성했습니다.
이번에는 대표적인 노코드 툴인 에어테이블(Airtable)을 이용해서, 사용자에게 설문으로 받았거나, 또는 사용자가 직접 데이터에 입력한 내용들을 PDF 양식에 맞게 출력하는 방법을 알아봅니다. 실제 업무 활용 사례를 하나 공유합니다.
상담 관리와 상담 일지 정리
프로젝트 개요/문제
한 프로젝트에서는, 여러 명의 상담사가, 여러 내담자를 여러 번 상담하는데, 매회 상담시마다 상담일지를 적어야 했었습니다. 이런 상담 운영은 관리 시스템이 있지 않으면, 여러 상담사의 일정을 조율하고, 상담 시간을 배치고, 원하는 문서를 제시간에 수집하고, 필요할 때에 안내를 보내는 것이 상당히 어렵습니다. 프로젝트 기간이 달랑 5~6개월 이내인데, 그것을 위해서 거대한 관리 시스템을 개발하려면 배보다 배꼽이 커지게 됩니다. 그렇다고, 적당히 엑셀이나 구글 시트로 운영을 하기에는 너무 복잡하기도 하고, 일정 관리, 협업이 어렵습니다.
상담 일지도 문제였습니다. 상담 일지에는 반복적으로, 상담자, 내담자, 상담장소, 시간, 유형 등이 들어가고, 상세한 상담 내용을 적어야 합니다. 이것을 처음에는 파워포인트나 워드프로세서 양식으로 만들어서 양식을 채워오라고 상담사에게 부탁했습니다. 그러나 사람마다 양식을 조금씩 변경해서 쓰기도 하고, 글꼴, 문단, 페이지 나누는 방법 등이 개인마다 미묘하게 달라지기도 합니다. 가장 큰 문제는 결과가 파일로 나오기 때문에 파일명을 일관성있게 붙이고, 상담사는 파일을 제출하고, 관리자는 취합해서 파일 관리를 하나하나 꼼꼼하게 해주어야 합니다.
솔루션: Airtable 기반의 상담 관리 시스템
그래서, 에어테이블로 상담 관리 시스템을 만들었습니다. 실제 초기 구축은 3~4시간 정도에 끝났고, 운영하면서 조금씩 보완해나갔습니다. 상담이 남아있는 내담자는 누구이고, 완료된 내담자는 누구이며, 상담사별로 얼마나 상담을 했고, 어떤 일정이 근간에 예정되어 있고, 지금 어떻게 진행되고 있는지 등이 한 눈에 보이는 것은 당연합니다.
상담 일지 입력
제가 추가로 기대했던 것은 바로 상담 일지의 관리였습니다. 각 상담사들이 에어테이블에 직접 들어가서 상담일지 작성 필드에 상담 내용을 서식이 있는 리치 텍스트(rich text)로 입력할 수 있게 했습니다. 에어테이블의 리치 텍스트 입력은 마크다운(Markdown)을 지원하며, 마크다운에 익숙하지 않은 사람들을 위해 아래 그림과 같이 보조 툴박스가 떠서, 금방 익숙하게 서식이 있는 문서 작성이 가능합니다.
Airtable에서 상담사가 상담일지를 입력하는 화면. Rich text 입력을 위한 툴박스가 제공되며, Markdown도 쓸 수 있다.
결과보고 및 상담 일지 출력
6개월 정도 되는 프로젝트가 종료되고, 발주처에 상담일지 원본을 상담사별, 내담자별, 주제별, 날짜별 등으로 정렬하여 제출해야 했습니다. 만약에 상담 일지를 파일로 만들었다면, 파일들 정리하느라고 하세월이 걸렸을 것입니다. 에어테이블에는 상담 일정 등 메타 데이터와 상담 내용(상담 일지)가 같이 정리되어 있으니, 원하는 방식으로 그룹핑하고, 정렬하는 것은 매우 쉬운 일입니다. 그리고, 상담 일지 양식은 에어테이블의 페이지 디자이너(Page designer)를 이용해서 1시간 정도 걸려서 템플릿을 만들었습니다.
Airtable의 Page Designer를 이용해 상담일지 템플릿을 만드는 모습
그리고, 드디어! 데이터베이스에 상담사들이 입력한 수백 건의 데이터와 내용들이 다음과 같이 깔끔하게 상담일지 양식으로 변환이 되었습니다. 그리고 수 백 페이지의 상담 일지는 그냥 클릭 한 번으로 PDF 파일 하나로 제작되었습니다.
상담일지를 PDF로 출력한 예시. 상담 한 건이 한 장으로 생성되며, 수 백 장도 한꺼번에 생성된다.
데이터베이스의 리포트 생성
데이터가 많고, 계속 변한다면, 그것의 구조를 만들고, 관리하는 것(structure, logic)과, 보여주는 것(presentation)이 분리되는 것이 바람직하겠죠.
구글 설문에 들어간 데이터, 그리고, 잣폼에 들어간 데이터도 마찬가지였습니다. 데이터 입력은 편하게 하되, 보여주는 아웃풋은 예쁘게 원하는 모양으로 보여야 합니다. 그래서 반복적인 템플릿이나 반복적인 데이터가 있는 자료들은 되도록이면 데이터베이스를 이용해 관리하는 것이 좋겠지요. 일상적인 업무에서도 데이터를 기반으로, 원하는 형식으로 만드는 일이 많이 있습니다. 예를 들면, 수 백 명의 상장, 수료증을 만든다거나, 인보이스를 출력한다거나, 재직증명서를 만든다거나, 특정한 형식의 요청서를 만드는 경우, 여러 명의 주소를 기반으로 우편 레이블을 만드는 경우, 수백 명의 고객에게 이름과 몇 가지 정보만 바꿔서 메일을 보내는 경우 등입니다. 이런 문서들은 양이 적으면, 워드프로세서 프로그램의 템플릿을 이용해 직접 작성할 수도 있지만, 조금 양이 많아지면, 보통 스프레드시트와 연계하여 소위 "메일 머지"를 사용해서 만들 수 있습니다. 그러나 데이터가 지속적으로 들어오고, 계속 업데이트되며, 여러 사람으로부터 수집해야 하는 데이터라면 데이터를 입력, 수집, 관리하는 시스템이 같이 따라줘야 합니다. 그리고 최종적으로 데이터를 원하는 형식(포맷)으로 만들어서 출력해주는 리포트(Report) 기능이 필요합니다.
간단한 데이터베이스와 쉬운 리포팅을 구현하는 방법으로 지금까지 구글 설문의 폼 퍼블리셔, 잣폼의 PDF 생성 기능, 그리고 에어테이블의 페이지 디자이너를 살펴보았습니다. 각각의 경우 약간의 특징과 장단점이 있습니다.
스프레드시트(엑셀, 구글시트 등)와 워드프로세서 메일 머지(워드, 한글 등)
변화가 없는 한정된 데이터를 가지고 있고, 특별히 입력 인터페이스는 필요없으며, 딱 한 번 작업하면 끝나는 경우에 적합.
그러나, 실제 비즈니스에서 상대방에게 전자 서명할 수 있는 필드를 넣지 않고,
그냥 모양만 서명할 수 있게 보내면, 잘 모르는 상대방은 인쇄해서, 종이에
서명하고, 다시 스캔받아서 회신해줄 가능성이 많습니다.
좀 더 친절한 방법은 PDF
문서 안에 "서명 필드"를 추가하여, 이메일이나 카카오톡과 같은 메신저로
상대방에게 보내주는 것입니다. 그렇게 하면, 상대방은 문서를 받자마자, "특별한
소프트웨어가 없어도", 바로 그 자리에서 서명을 할 수 있습니다. 이런 기능을 핵심적으로 가지고 있는 것들을 통상 전자 서명(electronic signature) 또는 전자 계약 솔루션이라고 합니다.
국내 솔루션:
아직 글로벌 시장에서는 잘 알려지지 않았지만, 국내 시장에서 많이
쓰이는 솔루션들도 있습니다: 모두싸인,
싸인오케이,
위드싸인,
이폼사인,
글로싸인,
도뉴,
유싸인,
페이퍼리스 등이 있고, 여기에 내부 HR
워크플로우와 연계된 플렉스,
원티드스페이스 등이 있고,
내부 전자 결재, 또는 디지털 서명까지 연계한 것을 감안하면, 선택지는 정말
많아집니다.
일반적 전자 서명 요청 프로세스
서명 요청을 보내는 방식은 거의 동일합니다.
상대방의 서명을 필요로 하는 문서를 업로드하거나, 오픈합니다.
내 서명이 필요하다면, 먼저 내 서명을 합니다.
상대방 서명이 필요한 곳에 서명 필드를 삽입합니다.
서명 요청을 받을 수신자의 이메일 또는 메신저 아이디를 지정합니다.
상대방이 이메일/메시지를 받으면, 아무런 소프트웨어 없이 바로 그 자리에서 전자 서명을 추가할 수 있습니다.
서명이 완료되면, 문서의 이해관계자 모두에게 이메일 통보가 가고, 서명된 문서가 공유됩니다.
서명 요청자는 이 모든 과정을 관리자 페이지에서 트래킹할 수 있습니다.
몇 가지 차이는, 한꺼번에 서명 요청을 몇 명에게 보낼 수 있느냐, 서명 필드 외에 다른 필드를 어떤 식으로 추가하느냐, 전자 서명 외에 디지털 서명을 추가하느냐, 계약서 템플릿을 제공하느냐 정도입니다.
솔루션 비교 (숏리스트)
오늘은, 아주 소규모 사업자나 프리랜서, 자영업자 또는 개인을 위해서, 실질적으로 무료로 사용할 수 있는 PDF 서명 요청 소프트웨어를 알아봅니다. 아래 표에 제가 직접 하나하나 직접 확인해서 PDF 전자 서명 요청 기능이 있는 솔루션들을 열거했습니다. 비교적 관대한 무료 플랜이 있는 것도 있고, 무료 요금제가 없는 것도 있습니다. 유료 최저 요금제로 가더라도 서명 요청 건수에 차이가 좀 있습니다.
SignFree는 무제한으로 서명 요청을 할 수 있고, 수신자도 바로 그 자리에서 서명을 할 수 있긴 한데, 정확히 어디에 서명을 해야 하는지 서명 필드를 지정해주지 않고, 수신자가 서명을 알아서 정확한 위치에 넣어야 한다는 점에서, 다른 유료 솔루션들과는 좀 차이가 있습니다.
개인적 선택/추천
회사/조직에서 계약서, 전자 서명을 많이 써야 한다면 Adobe Acrobat Standard나 Pro 또는 수많은 국내 솔루션 중에 하나를 추천합니다.
개인, 프리랜서, 일인 사업자이거나, 일회성 서명 요청, 소량의 계약을 해야 한다면, 간단하고 빠른 솔루션으로 Smallpdf나 iLovePDF를 추천합니다.
조금 사용법이 복잡하지만, 비즈니스에서 필요하다면, 온라인 양식(폼)을 매우 정교하게 만들고 관리해주는 Jotform도 사용해보십시오. Jotform은 오프라인 PDF 문서를 쉽게 온라인 문서로 만드는 데에도 유용합니다. 구글 설문보다 복잡한 온라인 양식을 만드는 데에 적합하고, 온라인 양식이나 PDF 문서에 쉽게 서명 요청란을 넣을 수 있습니다.
PDF 문서에 전자 서명을 추가하려고 합니다. 여기서 말하는 전자 서명은 우리가 종이에 서명(싸인)하는 것을 단지 전자 문서상에서 싸인하는 것입니다. 이런 전자 서명도 법적 효력이 있습니다. 하지만 발신자의 신원 증명 등을 위해 암호 키와 공개 키를 사용하는 디지털 서명과는 다른 이야기입니다.
상대방이 쉽게 전자 서명할 수 있도록 도와주고, 서명이 포함된 계약서를 관리하는 상용 솔루션은 아주아주 많습니다. 서명 및 계약서를 일대일로 주고 받거나, 다수에게 배포할 수 있습니다. 이런 솔루션들은 PDF 파일 내에 전자 서명이 가능하도록 별도의 필드를 제공합니다. 문서 수신자가 어디에 어떻게 서명해야 할 지 몰라도, 서명란을 쉽게 알 수 있고, 그 자리에서 서명을 추가할 수 있습니다. 그리고, 그 이후 워크플로우가 연계되어, 서명 문서를 클라우드에서 관리하는 방식입니다.
오늘의 시나리오는, 입력 및 서명이 필요한 양식 문서를 PDF로 받았는데, 전자 서명을 전혀 고려하지 않은 문서일 경우입니다. 단지 서명을 추가하기 위해서 인쇄하고, 종이에 서명하고, 다시 스캔하는 번거로움을 겪을 수는 없잖아요? 모양만 있는 서명란에, 서명을 해야 하는 "최종 사용자" 입장에서, 간단하게 전자 서명을 무료로 추가하는 방법을 알아봅니다.
1. 어도비 애크로밧 리더(Adobe Acrobat Reader) (거의 모든 OS에서)
이게 꼭 있어야만 PDF 파일을 볼 수 있다고 생각하는 분들이 많아서, 아마도 대부분의 PC / 맥 / 안드로이드 / 아이폰 사용자들이 가지고 있는 프로그램일 것입니다. 어도비 애크로밧 리더는 무료이며, 기본적으로 PDF 파일을 열어서 보고, 주석을 달거나, 양식(form)을 채우고, 서명을 추가할 수 있습니다.
방법도 간단합니다. 서명을 넣고 싶은 위치에 포인터를 클릭하고, 메뉴에서 Fill & Sign을 선택합니다. 서명을 넣는 방법은 직접 그려넣기, 이니셜을 영어로 타이핑하기, 또는 기존에 스캔받은 이미지를 가져오기가 있습니다. 이렇게 사용된 서명은 어도비 클라우드에 저장이 되어서 모바일이나, 다른 PC에서도 사용할 수 있습니다. 또 서명된 문서는 어도비 싸인이 인증하고, 읽기 전용 문서로 바뀌어 사본 또는 링크를 상대방에게 보낼 수 있습니다.
애크로밧 리더에서 서명 추가. 이니셜을 추가하는 화면
2. PDF24 (클라우드 또는 윈도우즈 환경)
생각보다 덜 알려져 있는데, PDF24는 개인과 기업에서 100% 무료로, 아무런 제한 없이 사용할 수 있는 훌륭한 PDF 도구입니다. 프린터 드라이브, 합치기, 나누기, 회전, 변환, 페이지 정렬, 편집 등 수많은 기능들이 있는데, 그 중에 서명 기능도 아주 요긴합니다. 윈도우즈용 PDF24 프로그램을 다운로드받아도 되고, 아니면 그냥 PDF24 온라인 서비스를 이용해도 됩니다. 도구 모음에서 "PDF 파일에 서명" 아이콘을 선택하고 원하는 파일을 열면, 바로 서명 도구가 있습니다. 직접 서명을 그리거나, 파일을 올리거나, 또는 카메라로 서명을 찍을 수 있습니다. 애크로밧 리더가 설치되어 있지 않거나, 클라우드에 로그인하는 것이 부담스러울 때, PDF24 온라인 서비스는 좋은 대안이 될 것입니다.
PDF24에서 제공하는 여러 도구들 PDF24를 이용해 문서에 서명을 추가하기
3. 맥의 미리보기 (macOS)
맥(Mac)에서는 내장된 미리보기(Preview) 프로그램에서 PDF 파일에 바로 서명을 추가할 수 있습니다. PDF 파일을 미리보기로 연 상태에서, 마크업 도구 막대 보기 버튼을 클릭한 다음(마크업 도구 막대가 보이지 않는 경우) 서명 버튼을 클릭하면 서명을 추가할 수 있습니다.
맥에서 미리보기를 이용해 PDF에 전자 서명을 추가하기 (이미지 출처: Jotform Blog)
서명을 추가하는 방법은 세 가지인데, 트랙패드에서 직접 그리기, 카메라로 찍어 올리기, 마지막은 아이폰/아이패드와 연계해서 서명 올리기가 가능합니다. 애플 지원 사이트를 참조하시거나, 전자 서명 방법을 자세히 안내한 잣폼 사이트를 참조하십시오.
마이크로소프트 365 앱은 워드, 엑셀, 파워포인트 등을 모바일에서 보고, 편집 가능한 통합 오피스 앱입니다. 당연히 원드라이브와도 연동되고, 좋은 것은 PDF 편집, 양식 채우기, 그리고 서명 추가가 가능하다는 점입니다. 모바일이기 때문에 오히려 데스크톱에서보다 자연스러운 서명을 추가할 수 있지요. PDF 파일을 불러와서 더보기 메뉴에 보면, "PDF 서명" 메뉴가 있습니다. 그러면 아래 그림처럼 PDF 파일의 원하는 위치에 서명을 넣을 수 있습니다.
Microsoft 365 앱에서 PDF 파일에 서명 추가
출력을 염두해서 만들어진 PDF 파일이라도, 요즘 프로그램들은 알아서 입력 양식을 찾아서 상당히 간편하게 양식 값을 넣을 수 있게 해줍니다. 그리고 전자 서명을 고려하지 않고 만들어진 문서라도, 출력하고, 스캔하는 번거로움 없이 서명을 추가할 수 있습니다. 요약하면, 데스크톱에서는 어도비 애크로밧 리더 또는 맥에 내장된 미리보기 프로그램을 이용합니다. 모바일 환경에서는 어도비 애크로밧 리더 또는 마이크로소프트 365를 이용합니다. 그냥 아무 환경에서나 브라우저가 있다면 PDF 24의 PDF 서명 도구를 이용하면 됩니다.
이번에는 PDF에 입력 가능한 양식을 넣는 대신에, 온라인 설문을 통해 응답을
수집하되, 수집된 결과물이 개인별 PDF 응답지로 저장되도록 해보겠습니다.
예를 들어, 동아리 가입 신청서는 온라인으로 아래와 같이 받고, 그 결과는 실제
가입신청서를 작성한 것처럼, PDF 파일로 생성되는 방식입니다.
온라인 설문 응답응답을 기반으로 생성된 PDF
제가 교육 운영 업무를 할 때 이런 경우가 있었습니다. 교육을 시작하기 전에
열심히 참여하겠다는 동의서를 개인적으로 다 받아야 했습니다. 주로 관공서
교육에서 많이 요구하죠. 교육 참여자 전원에게 설문을 실시해야 합니다.
현장에서 하는 교육은 참여자 10명에게 종이 10장을 나누어주고, 걷어야 합니다.
비대면 실시간 화상 교육을 한다면, 어떤 식으로든 설문지 파일을 전해주고, 개별
응답을 받고, 사진이나 첨부 파일로 받은 10개의 응답지를 다시 정리해야 합니다.
그 어느 경우도, 매우 귀찮은 일입니다. 그냥 온라인 설문으로 하면 되는데 말이죠.
이런 경우, 설문은 온라인 전자 설문으로 받고, 10개의 응답지는 알아서 PDF 파일로
개별 생성해준다면 편리하겠죠. 이렇게 하기 위한 몇 가지 방법을 앞으로 소개할
예정입니다. 오늘은 가장 널리 쓰이는 무료 온라인 설문 도구인 구글 설문지(Google
Forms)를 이용하도록 하겠습니다.
구글 설문지 만들기
여기에서 자세하게 구글 설문지를 만드는 방법은 설명하지 않겠습니다. 그렇게
어렵지 않으니 시도해보시면 금방 할 수 있습니다. 아래와 같이 동아리 가입 신청서
양식을 온라인 설문으로 만듭니다.
폼 퍼블리셔는 구글 설문으로 수집한 데이터를 기반으로, 원하는 문서를 생성해주는
부가 기능입니다. 이것을 응용하면, 설문을 기반으로 개인 응답지를 만들 수 있고,
회사에서는 간단한 신청 및 결재 프로세스를 태울 수도 있으며, 메일 머지, 상장
만들기, 심리 검사에 대한 개인별 자동해석 리포트 만들기도 할 수 있습니다.
응답지 템플릿 만들기
개인별 응답지가 어떤 형식으로 생성될 지 미리 템플릿을 정의해놔야 합니다.
템플릿은 구글 독스(워드프로세서), 구글 스프레드시트, 구글
슬라이드(프리젠테이션 툴)로 만들 수 있는데, 동아리 가입신청서는 간단히 구글
독스로 만들겠습니다. 구글 독스를 열고 아래 예시와 같이 템플릿을
만듭니다. (구글독스로 만들어진 실제 템플릿)
구글 독스로 만든 응답지 템플릿
템플릿 안에서, 설문지에 사용된 질문 문항을 그대로 변수로 사용합니다. Form
Publisher에서는 이런 변수를 마커(Marker)라고 합니다. 마커 이름에는
<<마커명>>과 같이 양쪽을 꺾인 괄호로 묶어줍니다. 바로 이 마커
부분에 사용자가 실제 응답한 내용이 대체되어 개인별 응답지가 만들어집니다. 예를
들어, 성명을 사용자가 "홍길동"이라고 답한다면, <<성명>>이라는 마커
자리에 홍길동이 들어간 응답지가 생성됩니다.
오늘 날짜, 응답자 이메일, 자동 증가하는 응답자 일련 번호 등과 같이 미리 정의된
변수, Standard Markers를 사용할 수도 있습니다. 동아리 신청서 예시에서는 신청한 날짜를 자동으로
불러오기 위해 <<Today>>라는 미리 정의된 마커를 사용합니다.
저장 폴더 만들기
설문 응답이 쌓여가면, 자동으로 생성된 응답지 파일(PDF 포함)을 저장할 폴더를
지정해야 합니다. 저는 현재 설문지가 있는 폴더의 하위 폴더를 하나 만들고,
"가입신청서_저장"이라는 이름을 붙였습니다. 아래와 같이, 현재 폴더에
가입신청서_설문, 가입신청서_설문(응답), 가입신청서_템플릿 파일이 놓이게 되고,
가입신청서_저장이라는 하위 폴더가 생성된 것을 알 수 있습니다.
설문이 있는 폴더 밑에 저장 폴더를 만들었습니다.
Form Publisher 설정하기
이제 구글 설문 편집 화면으로 돌아가서 아래 화면에서처럼 부가 기능에서 Form
Publisher를 선택하고, 실행합니다.
Form Publisher 실행
Form Publisher를 실행하면 화면 오른쪽 아래에 팝업 실행창이 뜹니다. 첫 화면은
Template and markers 화면이고, 좌측 위에 있는 햄버거 메뉴(☰)를
통해 다음과 같은 항목들을 차례대로 설정해주면 됩니다.
Form publisher의 메뉴 선택
Template and markers (템플릿 파일 선택 및 변수(마커) 확인)
Template and markers
Select template: 기본값으로 Form Publisher가 만들어준 템플릿이 있을
것입니다. 이것을 위에서 구글 독스로 만든 응답지 템플릿 파일로
바꿉니다.
Markers: 템플릿 파일을 읽어서 템플릿 파일 안에 변수(마커)가 설문지와
제대로 매칭되는지 확인합니다. 정상적이라면 초록색으로 1개의 표준
마커(<<Today>>)와, 5개의 설문지 문항이 마커로 쓰였다는 것을
확인할 수 있습니다.
Destination folders & routing rules (저장 폴더 지정)
응답자 개인별로 생성되는 응답지가 저장될 폴더 위치를 지정하는 것입니다. 위에서
미리 만들어놓은 "가입신청서_저장"이라는 폴더로 지정합니다.
Destination folders
File generation options (개별 응답 시트 파일 생성 옵션)
응답자 개인별로 생성되는 파일 관련 옵션입니다. 그 중에 제일 중요한 것은, Keep
PDF copy in Drive 옵션을 선택해서, PDF 파일이 차곡차곡 저장되도록 하는
것입니다.
File generation options
Naming convention (개별 응답 시트 파일 이름 설정)
응답자가 여러 명이 되면, 개별 응답지 생성 파일이 서로 구분될 수 있는 파일
이름을 부여해야 합니다. 저는 응답한 시간과 응답자의 성명을 변수로 넣어서 파일
이름을 "<<Timestamp>>_가입신청서_<<성명>>" 과 같이
지정했습니다. 그러면 실제로는 "2023-09-20_가입신청서_홍길동",
"2023-09-21_가입신청서_김철수"와 같이 응답한 시간과 응답자 성명을 조합하여
응답자별로 PDF 파일이 생성됩니다.
Naming convention
Sharing options and notifications (파일을 받아볼 사람 지정)
설문을 받고, 설문 결과 개인별로 생성된 PDF를 응답자 개인에게 자동으로 보낼
수도 있고, 아니면 관리자에게 보낼 수도 있습니다. 메일의 제목과 메시지의 세부
내용도 조정할 수 있습니다. 물론 메일을 보내지 않아도, 관리자 입장에서는 구글
드라이브의 저장 폴더에 응답지가 쌓이므로, 꼭 메일로 통보를 받는 것이 필수는
아닙니다.
Sharing options and notifications
마치며
이제 동아리 가입 신청서를 PDF로 배포하지 않고, 그냥 구글 설문으로 가입 신청을
받게 됩니다. 그리고, 신청이 한 번씩 이루어질 때마다, 자동으로 신청서 PDF
파일이 생성되어 쌓입니다. 물론, 구글 설문의 원래 기능대로 모든 응답 내용은
구글 스프레드시트에 저장되어, 쉽게 데이터 관리를 하고 통계 분석도 가능합니다.
아래 설문지 링크에서 테스트해보시기 바랍니다.
이번에는 별도의 프로그램 없이 그냥 온라인에서 입력 가능한 양식이 있는 PDF 문서를 쉽게 만들어주는 서비스를 살펴봅니다. 검색해보면 몇 가지 서비스들이 나옵니다. 예를 들면 DocFly, Sejda 등이 나오는데, 사실상 무료로는 제약이 너무 많아서 사용이 힘들게 되어 있습니다. 그래서 2023년 9월 12일 현재, 실제 무료로, 쓸만하게 양식을 만들 수 있는 온라인 서비스로 PDFescape를 이용합니다. 이후에 온라인 양식(form) 제작 툴을 이용한 좀 더 복잡한 방법들을 소개할 예정인데, 그걸 제외하면, 무료로, 가장 빠르고 간단하게 PDF 양식을 만드는 방법입니다.
최종 목적물과 작업용 파일
최종 목적물은 지금까지 해왔던 동아리 가입신청서입니다. PDFescape로 만들어진 실제 결과물을 참조하십시오. 작업용 파일은 아직 입력 양식이 없는 PDF 파일입니다. 이 파일을 PDFescape 에 업로드하여 양식을 추가할 예정입니다.
PDFescape로 만들 최종 결과물
PDFescape에 업로드할 작업용 문서
PDFescape란
기본적으로 온라인 PDF 에디터라고 보시면 됩니다. 구글링 해보면 온라인 PDF 에디터의 종류는 엄청나게 많습니다만, 그 중에서 PDFescape는 무료로, 입력 가능한 양식을 넣을 수 있다는 점에서 상당히 소중한 서비스입니다. 데스크톱용 에디터도 있는데, 시험판이어서 별로 추천하고 싶진 않습니다.
Insert(추가) 버튼과 Form Field(양식 필드) 버튼을 눌러 양식 추가를 시작합니다. 이어서 Form Field Creation Tool(양식 필드 만들기 도구)가 나타납니다. Text, Checkbox, Radio button, Dropdown, Listbox 양식을 선택할 수 있습니다.
양식 추가 시작하기
Form Field Creation Tool
성명, 휴대전화, 신청일, 신청자 성명을 위한 텍스트 필드
Form Field Creation Tool에서 Text 유형을 선택합니다. 한 번 유형이 선택되면, 별도로 중단시키기(disable) 전까지 계속 동일한 Text 양식을 추가할 수 있습니다. 성명, 휴대전화, 신청일, 신청자 성명 등에 모두 동일한 유형의 양식을 추가합니다. 마지막으로 이제 텍스트 필드 입력을 그만두기 위해 화면 상단에 Click here to disable. 부분을 누릅니다.
텍스트 필드 반복 입력 및 중단
이제 각 텍스트 필드의 속성을 정합니다. 텍스트 필드 하나를 선택하고, 편집(🖉)을 누르고, 다시 속성(🔧)을 선택하면, 현재 선택한 필드의 속성창이 나옵니다. 사실상 아무 것도 안 하고, 다 기본값으로 놔도 상관은 없는데, 다른 필드와 알기 쉬운 이름으로 구분하기 위해, Name 속성에 적절한 이름을 넣어줍니다. 성명 필드에는 성명, 휴대전화 필드에는 휴대전화 이런 식으로 넣으면 됩니다.
성명 필드 속성값 입력
성별 입력을 위한 라디오 버튼
Form Field Creation Tool(양식 필드 만들기 도구)에서 이제 Radio button 유형을 선택합니다. 작업용 파일에 남, 여, 기타 세 개의 선택 옵션이 있으므로, 연달아 세 개의 단추를 만들고, 화면 상단의 Click here to disable.을 눌러서 중단합니다. 이제 옵션 하나하나에 속성값을 넣어줍니다. 먼저 "남" 버튼을 선택하고, 속성창을 열어, Name에는 "성별"이라고 넣고, Export Value에는 "남"이라고 넣습니다. 세 개의 라디오 버튼 모두 공통으로 "성별"이라는 Name 값을 공유하고, 대신 Export Value만 각각 다른 값, "남", "여", "기타"를 넣어줍니다.
성별 라디오 버튼 속성값 입력
회원구분 입력을 위한 드롭다운 필드
성인 회원, 청년 회원, 청소년 회원 중에 하나만을 선택한다는 점에서 라디오 버튼과 비슷하지만, 드롭다운(Dropdown) 필드는 시각적으로 공간을 절약하고, 최종적으로는 선택된 것만 보이도록 한다는 점에서 차이가 있습니다. Name에는 적당히 구분되는 "회원구분"이라는 값을 넣어주었고, 중요한 것은 Field Options에 선택 가능한 목록값을 넣어주는 것입니다. 성인, 청년, 청소년이라는 입력값을 한 줄씩 넣어줍니다.
드롭다운 필드의 속성값 입력
가입경로 입력을 위한 체크상자
가입경로는 여러 개의 경로를 복수로 선택 가능하므로, 체크상자로 구현합니다. Form Field Creation Tool에서 Checkbox를 선택합니다. 인터넷 검색, 지인 추천, 홍보 전단지 앞에 체크상자를 하나씩 넣어주고, 마지막으로 Click here to disable.을 눌러서 중단합니다. 체크상자는 각각의 상자마다 서로 다른 Name과 Export Value를 넣어주면 됩니다. 예를 들면, 인터넷 검색 상자에는 Name과 Export Value에 모두 "인터넷 검색"을 넣고, 나머지 상자도 각 상자에 맞는 값을 넣어줍니다.
체크상자 필드의 속성값 입력
저장 및 다운로드
입력 양식을 다 넣고, 속성도 다 맞줘주었다면, 마지막으로 왼쪽에 있는 디스크 모양의 저장 버튼(💾)을 눌러 저장하고, 마지막으로 다운로드 버튼(⭳)을 눌러 내 컴퓨터로 내려받습니다. 완성된 양식은 여기에서 볼 수 있습니다. 그리고 이제 가지고 있는 PDF 뷰어로 열어보면, PDF 양식에 입력이 가능한 것을 알 수 있습니다.
PDFescape의 특징과 한계
PDFescape는 매우 간편하게 입력 가능한 PDF 양식을 생성할 수 있습니다. 하지만, 몇 가지 제약이 있습니다.
필드의 종류는 텍스트, 체크상자, 라디오 버튼, 드롭다운, 목록상자(Listbox)까지 있습니다. 텍스트의 종류에 따라, 정교하게 날짜, 숫자 등을 지정하지는 못합니다. 또 목록상자는 한글 입력이 안 되더군요.
각 필드의 모양(글꼴 크기, 종류 등)을 다듬을 수는 없습니다.
양식의 접근성(accessibility) 측면에서 각 양식 컨트롤은 레이블(label)과 짝짓기가 되어야 하는데, 그런 기능은 전혀 없습니다.
리브레오피스(LibreOffice)는 대표적인 오픈 소스 무료 오피스 스윗입니다. 오늘은 그 중에 워드프로세서인 라이터(Writer)를 이용하여, 입력 가능한 양식(fillable forms)이 있는 ODT(OpenDocument Text)파일을 만들어 보겠습니다. ODT 파일은 라이터 뿐만 아니라, 마이크로소프트 워드, 구글 문서(Google Docs), 한/글에서 열고, 편집할 수 있습니다.
라이터에는 앞서 살펴보았던 한/글보다 입력 가능한 양식 컨트롤(form controls)의 가짓수가 훨씬 많고, 속성도 더 상세하게 지정할 수 있습니다. 그 중에 자주 쓰이는 컨트롤만 가지고, 아래와 같은 동아리 가입 신청서 양식을 만들어보겠습니다.
만들고자 하는 동아리 가입 신청서 양식. 클릭하면 원본 ODT 파일을 다운로드합니다.
양식 컨트롤 도구모음 보이기
먼저, 양식 컨트롤을 계속 사용해야 하니, 툴바를 보이도록 하고 고정시켜 놓습니다. 메뉴에서 View > Toolbars > Form Controls 를 선택하면 툴바가 보입니다.
양식 컨트롤 도구모음(툴바) 보이기
툴바가 보였다 안 보였다 하면 불편하니 툴바에서 마우스 오른쪽 버튼을 누르고, Lock Toolbar Position을 선택해서 위치를 고정합니다.
양식 컨트롤 도구모음(툴바) 고정시키기
양식 컨트롤의 종류
리브레오피스에는 매우 많은 양식 컨트롤이 있습니다. 그 중에 현실적으로 자주 쓰이는 것들은, 텍스트 박스, 체크 박스, 옵션 버튼, 리스트 박스, 콤보 박스, 날짜 필드, 숫자 필드 정도입니다. 중요 컨트롤은 아래 예제에서 자세하게 설명합니다.
양식 컨트롤 툴바의 버튼 안내
성명 입력란 (Text Box)
성명 입력란은 일반 텍스트 박스로 넣습니다. 폼 컨트롤 툴바에서 텍스트 박스 아이콘을 선택하고 입력란을 넣고 싶은 위치에서 마우스로 박스를 그려주면 됩니다.
텍스트 박스 그려넣기
다시 박스 위에서 마우스 오른쪽 버튼을 눌러 폼 컨트롤 속성(Control Properties...)를 선택하여 나타나는 대화 상자에서 몇 가지 속성을 지정해줍니다.
텍스트 박스 속성 설정하기
Name: 시스템에서 다른 컨트롤과 구분해서 붙이는 고유한 이름입니다. Text Box 1이 자동으로 생성되는데, 그대로 두어도 되지만, 나중에 Name으로 컨트롤들을 구분하기 위해, "성명"이라는 값을 주었습니다.
Tab order: 나중에 탭키를 눌러 키보드로 폼 컨트롤 사이를 이동할 때, 이동 순서입니다. 제일 위에 있는 것이니 순서 1번을 부여합니다.
Font: 입력란에 데이터를 넣을 때, 표시되는 글자 모양, 크기 등을 지정합니다.
성별 (Option Button)
성별의 선택은 남, 여가 동시에 될 수 없으므로, 라디오 버튼(옵션 버튼)으로 만듭니다. 옵션 버튼을 두 개 연속으로 만듭니다. 먼저 만든 옵션 버튼 위에서 마우스 오른쪽 버튼을 누르고, Control Properties... 메뉴를 선택하여, 대화 상자에 다음과 같은 속성을 넣어줍니다.
라디오 버튼 속성 설정하기
Name: 시스템에서 구분하는 명칭입니다. "남"이라고 넣어줍니다. 기본값을 그대로 놔두어도 상관은 없습니다.
Label: 실제 라디오 버튼 옆에 무슨 값이 보이는지 지정하는 것으로 반드시 넣어주어야 합니다. "남"이라고 넣습니다.
Group name: 여러 개의 옵션 버튼이 하나의 그룹으로 묶이도록 하기 위해 같은 그룹 이름을 넣어주어야 합니다. 이 경우 "성별"이라고 넣습니다.
Tab order: 탭키 순서는 2번을 부여합니다.
Font: 글꼴 모양, 크기 등을 지정합니다.
이어서 두 번째 옵션 버튼에는 Name과 Label을 "여"라고 입력하고, Group name은 똑같이 "성별"이라고 입력합니다.
회원 구분 (List Box)
청소년, 청년, 성인 회원으로 구분하기 위해 목록 상자(List Box)로 만듭니다. 목록 상자는 옵션 버튼처럼 여러 개 중에 하나만 선택하게 되어 있지만, 화면에 모든 옵션이 나타나지 않고, 오른쪽에 있는 목록 보이기 버튼(▼)이 눌러져야 목록이 나타납니다. Control Properties... 대화상자에 다음과 같은 값들을 입력합니다.
목록 상자 속성 설정하기
Name: "회원 구분"이라고 넣습니다.
Tab order: 탭키 순서는 5번을 부여합니다.
List entries: 여기가 제일 중요하죠! 목록에서 선택 가능한 옵션을 아래 그림처럼 한 줄씩 입력해줍니다.
Font: 원하는 글꼴과 크기를 지정합니다.
가입 경로 (Check Box)
가입경로는 회원구분과 달리 여러 개의 옵션을 복수로 선택할 수 있으므로, 체크 상자(Check Box)로 만듭니다. 그룹으로 묶어줄 필요는 없고, 옵션 하나하나의 속성을 독립적으로 지정해줍니다.
첫 번째 체크 상자인 "인터넷 검색"이라는 옵션의 Control Properties...는 다음과 같습니다. 나머지 체크 상자도 같은 방식으로 속성을 지정하면 됩니다.
체크 상자 속성 설정하기
Name: 다른 양식 컨트롤이나 체크 상자와 구분하기 위한 이름으로 "인터넷 검색"을 지정했습니다.
Label: 여기서 레이블은 체크 상자 옆에 실제 표시되는 이름이기도 하고, 선택했을 때 전해지는 값이기도 합니다. "인터넷 검색"이라고 넣으면 됩니다.
Tab order: 탭키 순서 6번을 주었습니다.
Font: 원하는 글꼴과 크기를 선택합니다.
신청일 (Date Field)
한/글과 달리 리브레오피스 라이터에는 날짜만 받을 수 있는 양식 컨트롤 날짜 필드(Date Field)가 있고, 달력을 통해 날짜를 선택하게 할 수도 있습니다. 신청일의 속성은 다음과 같이 지정해줍니다.
날짜 필드 속성 설정하기
Name: 이름은 다른 곳과 구분되게 "신청일"이라고 지정합니다.
Tab order: 탭키 순서 9번을 부여했습니다.
Date format: 연월일을 어떤 형식으로 표시할 지 선택합니다. 연월일 순으로 표시하려면 YYYY-MM-DD 를 선택하면 됩니다.
Dropdown: 날짜를 직접 입력하는 대신에 드롭다운 버튼(▼)을 눌러서 달력이 나오게 하려면, "Yes"를 선택합니다.
그 밖에, 입력 가능한 날짜의 최소값( Date min), 최대값(Date max ), 기본값(Default date) 등을 지정할 수 있습니다.
양식 파일 배포
파일을 받아 사용하는 사람은 양식을 수정하면 안 되니, 저장하기 전에 툴바에서 '디자인 모드'를 끈(Off) 다음, 리브레오피스 라이터 파일(ODT)로 저장하고 배포합니다. 이 글에서 사용된 양식 파일(ODT)을 다운로드해서 확인해보세요.
PDF 파일 배포
리브레오피스가 한/글보다 좋은 점은, PDF로 저장해도, 양식 입력이 가능하다는 점입니다. PDF 파일로 배포하려면, 메뉴에서 File > Export As > Export Directly as PDF 를 선택하여 PDF 파일로 저장합니다.
PDF 파일로 최종 저장된 입력 가능한 양식(동아리 신청서)을 확인해보십시오. (주의) PDF 뷰어에 따라서 약간씩 다르게 나올 수 있습니다. 저는 PDF24 Reader, Microsoft Edge, Chrome, Firefox, Adobe Acrobat Reader DC 에서 확인해보았습니다.
아이가 학교에 아파서 결석한 경우, 결석계를 낸 적이 있습니다. 아래아한글로
된 문서 양식 중간에는 체크상자(□)등도 있고, 날짜를 넣는 곳도 있는데,
한글에서 작성하려면 좀 짜증이 납니다. 빈 체크상자(□)는 선택된 체크상자(☑
또는 ☒, 또는 ■)로 교체해주어야 하고, "0000년 00월 00일" 또는
"000-0000-0000"와 같은 자리 표시자(placeholder)는 지웠다가 다시 밀고, 당기고
하면서 값을 입력해야 합니다.
구글 설문지, 마이크로소프트 폼, 네이버 설문, 잣폼(Jotform), 또는 직접
작성한 온라인 입력 양식을 쓰면 좋을 것 같기도 한데, 온라인 설문을 쓰기가 좀
어려운 경우가 있습니다.
입력 양식이 있는 PDF 문서의 예
양식 제출자와 양식 수집자가 동일한 형태의 문서를 보관해야 하는 경우, 양식
작성에 시간이 많이 걸려서, 작성자가 어느 정도 작성하고 최종본을 다듬어서
제출하는 경우 등에는 PDF나 워드프로세서 문서로 제출하는 방식을 쓰는 것이
나을 것입니다. 사람들이 쓰는 워드프로세서 프로그램에 따라 대부분 자체적으로
입력 양식(fillable form)을 넣을 수 있는 기능이 있습니다. 그래서, 입력 양식을
넣는 여러 가지 방법들을 앞으로 여러 개의 글로 나누어 알아보려고
합니다.
위의 방법들은 완전 무료 또는 거의 무료(아래아한글과 같은 일부 상용
소프트웨어를 쓰는 경우, 또는 상당히 관대한 무료 플랜이 있는 서비스를
활용)인 도구를 활용할 예정입니다. 그냥 상용 소프트웨어인 어도비 애크로밧
프로(Adobe Acrobat Pro)를 쓰면 상당히 쉽게 입력 가능한 양식이 있는 PDF
문서를 만들 수 있는 것이 사실입니다만, 그래도 트라이얼이 아닌 진짜 무료
서비스, 무료 소프트웨어를 이용해서 입력 양식을 만드는 법을
알아보겠습니다.