Xuất hình ảnh base64 sang excel bằng JavaScript

Chuyển vào một tệp văn bản có một hình ảnh base64 trên mỗi dòng. Điều này sẽ viết ra một chuỗi các hình ảnh, như image0001.png, image0002.png,

import fileinput
import base64

for index, line in enumerate(fileinput.input(), 1):
  if line.startswith('data:image/png;base64,'):
    with open('image{0:04}.png'.format(index), 'wb') as png:
       line = line.strip()
       png.write(base64.b64decode(line[22:] + '===='))

Lưu cái này vào một tệp như decode.py, sau đó chạy nó với

python3 decode.py input.txt

Nếu tệp đầu vào của bạn là CSV có một cột, thì đó cũng là tệp văn bản, vì vậy bạn có thể sử dụng tệp đó trực tiếp (mặc dù CSV có thể có trích dẫn mà bạn cần cắt bỏ). Nếu bạn thực sự phải chấp nhận đầu vào trong một bảng tính Excel phù hợp, thì việc xuất bảng tính đó sang CSV là một quy trình thủ công, đây là một lý do chính đáng để tránh Excel nếu bạn có thể

Dựa trên nhận xét của bạn, đây là một nỗ lực để sử dụng mô-đun xlrd để đọc Excel trực tiếp, nhưng tôi (rất may) không có gì để kiểm tra nó trên

import base64
import xlrd

workbook = xlrd.open_workbook("images.xlsx")
worksheet = workbook.sheet_by_name("Sheet1")

for idx in range(1, worksheet.nrows+1):
    excel_data = worksheet.cell(idx-1,0).value
    if excel_data.startswith('data:image/png;base64,'):
        with open('image{0:04}.png'.format(idx), 'wb') as png:
            png.write(base64.b64decode(excel_data.strip()[22:] + '===='))

Nỗ lực của bạn đang sử dụng dữ liệu base64 excel_data thay vì chỉ mục trong đối số của open chỉ định tên tệp.

python3 decode.py input.txt
0 chạy từ 1 đến số của hàng dữ liệu cuối cùng

phụ lục. Một số dữ liệu dường như bị sai. Tôi đã cố gắng trích xuất ảnh của bạn bằng cách hack sau, nhưng tôi không chắc liệu nó có thực sự tạo ra đầu ra chính xác hay không - cách này có vẻ hiệu quả với những hình ảnh tôi đã thử, nhưng nó có thể gây ra lỗi vì tôi chỉ đơn giản là bỏ ký tự base64 cuối cùng

Tôi có một Bảng đầy trong powerbi. com, Bảng có 7 cột (ngày, văn bản và 1 hình ảnh). Khi tôi xuất bảng, hình ảnh sẽ chuyển thành văn bản. Tôi đã thử hình ảnh với định dạng URL và với Hình ảnh Base64

Khi tôi xuất dữ liệu sang Excel, hình ảnh của bảng sẽ thay đổi thành URL hoặc mã hình ảnh Base64

bước. Bảng > (…) Tùy chọn khác > Xuất dữ liệu > Dữ liệu với thiết kế hiện tại

Bạn có đề xuất nào để xuất Bảng dữ liệu đã lọc và hiển thị hình ảnh trong Excel không?

Trân trọng,

isern

Sau đó, một quy trình sẽ được kích hoạt, trước tiên sẽ phân tích cú pháp JSON từ PayLoad1, PayLoad2, PayLoad3 của mục danh sách SPO

Sau đó, trình kết nối Thêm hàng của excel sẽ lấp đầy ba bảng từ dữ liệu trên trong một bảng excel hiện có

Sheet Excel có 3 Table (Table1,Table2,Table3)

Tên cột của cả 3 bảng đều giống nhau- SrNo, Area, Point, Status, Remark, Image (Tùy chọn). (Tổng cộng 6 cột và 3 bảng)

Sau đó, một email sẽ được gửi đính kèm tệp excel đó vào địa chỉ email người dùng đã đặt trước

Sau đó, tất cả các hàng từ cả 3 bảng sẽ bị xóa bằng trình kết nối excel khác. (Để làm cho nó sẵn sàng cho trình kích hoạt luồng trong tương lai dưới dạng mẫu)

Mọi thứ đều chạy tốt ngoại trừ vấn đề chèn hình ảnh trong bảng excel excel

Cần chèn hình ảnh vào cột Hình ảnh (Tùy chọn) của excel. Điều này là bắt buộc

(Câu hỏi ngoài chủ đề. Làm cách nào tôi có thể tạo chữ ký của mình để nó tự động được thêm vào khi tạo/trả lời một bài đăng trong diễn đàn cộng đồng này?

Xem cuộc gọi lại để biết chi tiết triển khai. sổ làm việc. phương pháp chỉ định dữ liệu hình ảnh và mã hóa. tham số tl và br được sử dụng để chỉ định vị trí và khoảng thời gian hình ảnh

Xem thêm Ẩn chi tiết

Bản demo trước Bản demo tiếp theo

Bản trình diễn này có hữu ích không?

 

 

Cảm ơn bạn

Vui lòng chia sẻ những suy nghĩ liên quan đến bản trình diễn tại đây.
Nếu bạn có thắc mắc về kỹ thuật, vui lòng tạo một yêu cầu hỗ trợ trong Trung tâm hỗ trợ DevExpress.

x

Gửi thông tin phản hồi

Cảm ơn bạn.
Chúng tôi đánh giá cao phản hồi của bạn.

jQuery

góc cạnh

Vue

Phản ứng

góc cạnhJS

ASP. NET lõi

ASP. NET MVC

API phụ trợ

Sao chép vào CodePen

Áp dụng

Cài lại

const DemoApp = angular.module('DemoApp', ['dx']); DemoApp.controller('DemoController', ($scope) => { $scope.gridOptions = { dataSource: employees, keyExpr: 'ID', showBorders: true, showRowLines: true, showColumnLines: false, export: { enabled: true, }, columns: [ { dataField: 'Picture', width: 90, cellTemplate(container, options) { $('

') .append($('