- Đây là gói cho phép tự động thêm vết cà phê vào tài liệu LaTeX, giúp đơn giản hóa quy trình vốn trước đây phải chèn ảnh thủ công
- Cung cấp bốn kiểu vết bẩn (A~D) và cho phép tinh chỉnh chi tiết độ trong suốt, kích thước, góc xoay và vị trí
- Sau khi cài đặt, khai báo
\usepackage{coffeestains} rồi dùng các lệnh vết bẩn (\coffeestainA~\coffeestainD) để đặt chúng lên trang
- Có thể tự do phân phối không bị ràng buộc bản quyền, và mọi hình ảnh vết bẩn đều do tác giả tự tạo, chụp và biên tập
- Từ phiên bản đầu tiên năm 2009, gói đã liên tục được cải tiến; ở phiên bản 0.5.1 năm 2021, mốc xoay của vết bẩn được đổi từ tâm trang sang tâm vết bẩn
Giới thiệu (Introduction)
- Gói này cung cấp chức năng thêm hiệu ứng vết cà phê vào tài liệu LaTeX
- In trực tiếp vết bẩn lên tài liệu để tiết kiệm thời gian chèn thủ công
- Cung cấp bốn loại vết bẩn
- Loại A: vết tròn 270° và hai vết bắn nhỏ
- Loại B: vết tròn 60°
- Loại C: hai vết bắn màu sáng
- Loại D: cặp vết bắn song sinh nhiều màu
Cách dùng (Usage)
- Đặt tệp
coffeestains.sty trong thư mục dự án LaTeX hoặc cài vào bản phân phối, sau đó thêm vào phần đầu tài liệu
\usepackage{coffeestains}
- Mỗi vết bẩn được chèn bằng các lệnh sau
\coffeestainA{alpha}{scale}{angle}{xoff}{yoff}
\coffeestainB{alpha}{scale}{angle}{xoff}{yoff}
\coffeestainC{alpha}{scale}{angle}{xoff}{yoff}
\coffeestainD{alpha}{scale}{angle}{xoff}{yoff}
- Giải thích tham số
- alpha: độ trong suốt (0~1)
- scale: hệ số kích thước (mặc định 1)
- angle: góc xoay của vết bẩn (0~360 độ)
- xoff, yoff: độ lệch vị trí tính từ tâm trang (khuyến nghị chỉ định đơn vị)
- Ví dụ lệnh
\coffeestainA{0.9}{0.85}{-25}{5cm}{1.3cm}
\coffeestainB{0.7}{1}{-30}{18pt}{-135pt}
\coffeestainC{1}{1}{180}{0}{-5mm}
\coffeestainD{0.4}{0.5}{90}{3cm}{4cm}
Bản quyền (Copyright)
- Có thể tự do phân phối, vì tác giả không tin vào khái niệm “tài sản tưởng tượng (imaginary property)”
- Tất cả các vết bẩn đều do Hanno Rein tự tạo, chụp rồi xử lý bằng GIMP và Inkscape
- Chỉ nhận quyên góp dưới dạng cà phê, gửi cho Hanno Rein tại cơ sở Scarborough của Đại học Toronto, Canada
Cải tiến mong muốn (Desired improvements)
- Hiện mới chỉ hỗ trợ vết cà phê, nhưng trong tương lai cần mở rộng để tự động in cả vết latte, trà, gazpacho và dầu mỡ
- Cũng đề cập nhu cầu phát triển công cụ của cộng đồng LaTeX để tự động hóa cả những vết bẩn vốn bị đóng thủ công lên tài liệu ở các khoa toán và những nơi tương tự
Lịch sử thay đổi (Change Log)
- 3 tháng 4, 2009: Hanno Rein công bố phiên bản đầu tiên (0.1)
- 23 tháng 11, 2010: Evan Sultanik phát triển phiên bản tương thích pdflatex (0.2)
- 24 tháng 3, 2011: Luis Randez thêm khả năng điều chỉnh kích thước, xoay và độ trong suốt (0.3)
- 25 tháng 5, 2012: Adrian Robson bổ sung hỗ trợ vết bẩn lệch tâm (0.4)
- 1 tháng 5, 2021: Patrick Bideault công bố phiên bản kho git (0.5), thay đổi mốc xoay của vết bẩn từ tâm trang → tâm vết bẩn
Phương châm vĩnh cửu (Eternal mottos)
- “Coffee is great.”
- “Coffee will save the world.”
Khác
- Ở trang cuối tài liệu có câu: “Trang này được cố ý để trống, nhưng việc thông báo điều đó đã làm hỏng nó”
- Phiên bản mới nhất là 0.5.1 (25 tháng 6, 2021)
1 bình luận
Ý kiến trên Hacker News
Nếu LaTeX không phải là tiêu chuẩn trong giới học thuật hay các tạp chí liên quan đến vết bẩn thì có lẽ mọi người đã chuyển sang Typst rồi
Tất nhiên cũng có thể tạo vết cà phê bằng HTML, nhưng với Markdown thì không thể
Hồi trước một đồng nghiệp ở đại học thỉnh thoảng thêm các vết như vậy vào tài liệu để làm dấu “đã đọc”
Đồng thời chia sẻ các luồng HN trước đó liên quan: tổng hợp bài cũ, thảo luận liên quan 1, thảo luận liên quan 2
Tôi tò mò liệu có thể tạo sinh theo thủ tục các vết cà phê trông chân thực hay không
Nếu in trực tiếp những thứ này lên trang thì sẽ tiết kiệm được kha khá thời gian phải tự thêm bằng tay
Có thể quản lý phiên bản, không gặp mớ hỗn độn định dạng như Word. Nó hoàn toàn tất định (deterministic) nên kết quả luôn ổn định
Giờ còn có thể dùng LLM để chuyển đổi dễ dàng và tự động sửa cảnh báo. Dù bạn không uống cà phê, CV viết bằng LaTeX vẫn rất đáng khuyến nghị
Chúng tôi chuyển các trang web thành PDF với nhiều phông chữ khác nhau, rồi dùng ImageMagick để thêm hiệu ứng làm mờ
Và tất nhiên, cũng dùng luôn chương trình tạo vết cà phê này