Создание PDF-сертификата через javascript в Captivate для Captivate Prime LMS - PullRequest
0 голосов
/ 02 ноября 2018

Я создаю собственный Сертификат через курс Captivate, который будет проводиться в Captivate Prime. У нас есть код, написанный для получения API-интерфейсов от Captivate Prime, и они, похоже, используются в Chrome, Firefox и Edge, но не в IE 7-10. В качестве отдельной проблемы создание сертификата в формате PDF осуществляется с помощью кода, и этот код активируется кнопкой. Когда учащийся возвращается на курс в Captivate Prime, кнопка больше не будет работать.

Настройка: учащийся сдает тест из 10 вопросов. Если они проходят, сертификат «курс» открывается, и когда он показывает, он извлекает информацию из API и заполняет общую информацию; Имя, адрес, название курса, участвующий в конкурсе и т. Д. На странице есть кнопка, которую ученик может щелкнуть, чтобы создать PDF-файл и загрузить его со всей информацией из API, которые уже были извлечены. В Internet Explorer страница в Captivate Prime не будет заполнять информацию об API, но она работает в Chrome, Firefox и Edge. Если вы вернетесь к курсу и к этому содержанию (создание сертификата), информация снова загрузится в визуал, но кнопка не будет работать для создания PDF.

Я прилагаю код, но если я не описал это достаточно подробно или у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь спрашивать.

Это создание PDF.

 function createCert() {
// This is the function that will generate a PDF from an image and text 
fields.
var imgBackground = new Image();
imgBackground.src = "DHA-Test-Cert.png";
imgBackground.onload = function () {
    var doc = new jsPDF({
        orientation: 'landscape',
        unit: 'in',
        format: [11, 8.5]
    });
    doc.addImage(imgBackground, 0, 0, 11, 8.5);
    var userName = window.cpAPIInterface.getVariableValue("v_UserName");
    var fileName = "DHACertPDF.pdf";
    var courseTitle = 
window.cpAPIInterface.getVariableValue("v_CourseTitle");
var dateCompleted = 
window.cpAPIInterface.getVariableValue("v_CompletionDate");
var userAddress1 = window.cpAPIInterface.getVariableValue("v_Address1");
var userAddress2 = window.cpAPIInterface.getVariableValue("v_Address2");
    var userCityStateZip = 
window.cpAPIInterface.getVariableValue("v_CityStateZip");

    doc.setFontSize(12);
    doc.setTextColor(0, 0, 0);
    doc.setFont("helvetica");
    doc.setFontType("bold");
    doc.text(4.6, 6.6, userName, null, null, 'left');
    doc.text(4.6, 7.2, courseTitle, null, null, 'left');
doc.setFontType("normal");
    doc.text(.41, 2.8, dateCompleted, null, null, 'left');
    doc.text(.41, 3.0, courseTitle, null, null, 'left');
doc.text(.41, 5.6, userName, null, null, 'left');
doc.text(.41, 5.8, userAddress1, null, null, 'left');
doc.text(.41, 6.0, userAddress2, null, null, 'left');
doc.text(.41, 6.2, userCityStateZip, null, null, 'left');
    doc.save(fileName);
};
}// JavaScript Document
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...