Thay thế phông chữ tài liệu (LibreOffice, MS Office)


3

Trong văn phòng của tôi, chúng tôi đang gặp vấn đề nhỏ này là một nhóm hình ảnh thương hiệu đã quyết định một số thay đổi trong hồ sơ đồ họa của chúng tôi. Một điều điều này dẫn đến việc thay đổi phông chữ tài liệu từ "Times New Roman" thành "Georgia".

Điều này có nghĩa là chúng tôi có hàng trăm tài liệu mà chúng tôi sẽ cần phải thay đổi phông chữ.

Bây giờ có cách nào từ dòng hoặc bằng một tập lệnh thay thế phông chữ trong Linux / Libreoffice hoặc Windows / MS Office không?

Có lẽ một cái gì đó như:

for i in *.doc; do
  libreoffice --font-substitution input-font="Times New Roman" output-font="Georgia" newfiles/$i $i;
done

Tôi hy vọng bạn có được hình ảnh. Một cách để thay thế phông chữ "en masse" :-)

Cảm ơn những nỗ lực của bạn!

/ Paul


Trong Microsoft Office, bạn có thể có thể viết một cái gì đó bằng Visualbasic và thử gọi nó từ dòng lệnh.
Lexib0y

Câu trả lời:


1

Cảm ơn bạn ngulam!

Câu trả lời của bạn đã khiến tôi tìm kiếm thêm các giải pháp dòng lệnh và bây giờ tôi đã nhận được nó!

Đặt một loạt Officefiles (những tệp nén mới như DOCX, PPTX, ODT) trong một thư mục. Sử dụng bản sao. Đừng chạy cái này trên bản gốc. Sau đó tạo và chạy tập lệnh Bash sau.

#!/bin/bash

for i in *.*; do

unzip -d tmp $i
find tmp -type f | xargs sed -i 's/"Times New Roman"/Georgia/g'
# find tmp -type f | xargs sed -i 's/"'Times New Roman'"/"Georgia"/g'
cd tmp; zip -r ../$i .
rm -Rf tmp

done

exit0

Khi tập lệnh đã hoàn thành phông chữ "Times New Roman" đã được thay thế thành "Georgia" trong tất cả các tệp trong thư mục.

/ Paul

Tái bút Dòng mã thứ hai bắt đầu bằng "find" là cần thiết khi thay thế "Times New Roman" thành "Georgia", nhưng không phải khi thay thế "Arial" thành Georgia ". Nó có thể phụ thuộc vào khoảng trắng trong" Times New Roman ".


Có một số vấn đề xử lý các không gian trong "Times New Roman" ....
Paul Bergström

0

Một số điều cần quan tâm trước khi bạn nghĩ đến việc bắt đầu điều này: Word sử dụng Kiểu cho định dạng văn bản. Khi bạn sao chép trong một số văn bản từ một trình soạn thảo sao chép khác, bạn sẽ sao chép theo kiểu đó khi bạn chỉ sử dụng CTRL V. Nhìn vào biểu định kiểu của bạn sẽ hiển thị hơn vô số kiểu.

Nếu đây là trường hợp, mẹo của bạn để thay đổi tất cả trong một lần sẽ KHÔNG hoạt động

Để làm việc này TẤT CẢ các kiểu của bạn phải dựa trên kiểu bình thường. Sau đó, tất cả các văn bản của bạn phải sử dụng phong cách bất kỳ định dạng bạn làm. Chỉ cần một tay thay đổi phông chữ sẽ làm cho điều này thất bại. Nó thậm chí có thể làm cho tài liệu đó bị hỏng.

Một vấn đề khác là một số kiểu dựa trên "Không" đặt chúng ở cùng cấp độ với kiểu thông thường. Mỗi phong cách phải được thay đổi. Bạn có thể làm điều này trong VBA bằng cách hỏi từng kiểu trên định dạng đó và thay đổi nó cho phù hợp.

Cho mình. Tôi sẽ không làm điều đó. Lấy một tài liệu att một thời gian. Nói chuyện với quản lý bán hàng và sản phẩm về những thứ được sử dụng phổ biến nhất và bắt đầu với chúng


0

Phiên bản LibreScript của tôi có tùy chọn thay thế phông chữ bằng phông chữ khác, xem: Tools>Options...>LibreOffice>Fonts

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.